Hola gente...
Tengo una duda de ASM, pero en electronica.. Supongo que por ser basada en ASM va aca.. Espero no equivocarme :/
Mi duda es:
Veo que en "manuales" utilizan mucho el movlw d'45'
Lo cual significa mover al espacio de trabajo del PIC (W) el valor: 45
Bien...
Es como que en los tutoriales AFIRMAN.. o sea.. Dicen: "W es un espacio reservado especial para colocar valores bla bla bla"
Pero tambien está el:
movf y el movwf que es para "jugar" con el registro W con un "f" el cual no detallan en algun lado QUE ES!!!
A mi entender, F es como CUALQUEIR COSA.. por ejemplo
movwf PORTB ;moverá lo que tiene W a PORTB.. y ese PORTB está representado por la F de la que los tutoriales hablan.. no es así????
Edito:
Acabo de que si existe el registro W y el F..
Que diferencia hay entre ellos?
EI: juntando mensajes.
Aprovecho éste mismo post para preguntar algo que me está sacando de quicio..
Lean ésto:
(http://img212.imageshack.us/img212/663/tontera.jpg)
Quien, carajo va a querer que salte un programa sobre si mismo??? Para que utilidad? PORQUE COMPLICAN CON ESTUPIDECES LOS CEREBROS DE ESA MANERA?
Porque aca son las 5:33 AM (argentina).. ya llevo varias horas de lectura... y de repente le ésto.. y no se si estoy delirando o que...
Edito:
Puede ser para crear un bucle infinito?? Con alguna finalidad?? por ejemplo cual?
Lo del dolar -$- es util para saber por ejemplo el tamaño de una cadena....
Y eso que tiene que ver con hacer un bucle infinito sobre si mismo?
W (de working) es el registro acumulador, no esta mappeado a ninguna direccion de memoria, F se refiere a un registro de archivo (file), en el caso del ejemplo que das es PORTB, pero podria ser cualquier otro de esos que aparecen en la imagen que viene aca:
http://www.hobbyprojects.com/pic_tutorials/tutorial2.html
Efectivamente el $ terminador de cadena no tiene nada que ver con el uso del $ para identificar la instruccion actual.
Al final de libro detallas que es cada cosa, mira en la página 570, al menos en la 2ª y 3ª Edición es así.
f = Dirección del registro (de 0x00 hasta 0x7F). La tercera edición está mejor que salió hace meses, más moderno.
Si quieres saber de instrucciones mira este tutorial.
DESCARGAR (http://electronica-pic.blogspot.com/2009/03/asm-desde-cero.html) tutorial en ASM desde cero.
Saludo.
EI: junto mensajes aunque no se si deberia borrar, al fin de cuentas todo esta dicho ya.
Cita de: Karcrack en 16 Julio 2009, 11:46 AM
Lo del dolar -$- es util para saber por ejemplo el tamaño de una cadena....
No, significa que te quedas donde estas.
Si usas por ejemplo.
Hola $ ; Se queda donde está, es un goto.
Si usas este ejemplo:
Hola0
Hola1
Hola2 $ +2 ; Salta directamente al Hola 4.
Hola3
Hola 4En caso de que sea $ -1, retrocede una instrucción hacia atrás, en este caso a Hola1.
Perfecto.. Duda resuelta...
La pregunta se me planteó cuando vi que dentro del archivo de MPLAB, del que contiene las "reglas" de pic16f84a, hace como unas "definiciones de variables" donde dicen:
W EQU h'0000'
F EQU h'0001'
Nada mas..
En la pagina 569 "la letra f representa un registro", ese un registro quiere decir uno cualquiera de los ya mencionados. Mira la figura 4-1 tambien, pagina 38, ahi vas a ver a W, que no esta en la memoria como los otros registros sino en la propia CPU.
Info externa sobre las instrucciones (http://en.wikipedia.org/wiki/PIC_microcontroller#Instruction_set).
Perfecto...
Duda resuelta..
Lee los libros de angulo estan muy buenos rre fácil lo explican son de lujo... :-[....me salvaron en la facu muchas veces :rolleyes: