programación en assembler
con el p=16f84a
Hacer un programa que lea un dato por el PORTB y guarde el complemento A1 de ese dato en un registro llamado compA1
Respuestas a la pregunta
Contestado por
2
Hola. Veamos:
- Con respecto al complemento a uno de un número binario, se puede obtener con solo intercambiar los 1 por los 0, y los 0 por los 1.
Por ejemplo:
Si en un determinado momento el valor de PORTB es 10011010, en efecto, su complemento a uno será: 01100101 (observa el intercambio de unos por ceros y viceversa)
Para tu suerte, dentro del repertorio de instrucciones del pic16f84a tenemos la instrucción "COMF" que se encarga de realizar este trabajo, mediante la sintaxis "COMF f,d" donde lo que nos queda es indicar que registro "f" que es el que queremos hallar su complemento y mediante "d" indicar donde queremos guardar el resultado, donde si d=1, se guarda en el mismo registro (obviamente 'olvidando' el anterior) o si d=0 lo almacena en el registro de trabajo "W"
Ahora bien, teniendo claro eso, pasamos a lo más interesante, el código, el cúal te lo dejaré en la imagen adjunta. Hago esto con doble intención, que te encargues de transcribir el código y que aprendas al momento de hacerlo y también porque resulta más fácil y agradable de leer por lo colores y sobre todo si estás desde la aplicación, el código no te saldrá "desordenado".
Saludos!!
- Con respecto al complemento a uno de un número binario, se puede obtener con solo intercambiar los 1 por los 0, y los 0 por los 1.
Por ejemplo:
Si en un determinado momento el valor de PORTB es 10011010, en efecto, su complemento a uno será: 01100101 (observa el intercambio de unos por ceros y viceversa)
Para tu suerte, dentro del repertorio de instrucciones del pic16f84a tenemos la instrucción "COMF" que se encarga de realizar este trabajo, mediante la sintaxis "COMF f,d" donde lo que nos queda es indicar que registro "f" que es el que queremos hallar su complemento y mediante "d" indicar donde queremos guardar el resultado, donde si d=1, se guarda en el mismo registro (obviamente 'olvidando' el anterior) o si d=0 lo almacena en el registro de trabajo "W"
Ahora bien, teniendo claro eso, pasamos a lo más interesante, el código, el cúal te lo dejaré en la imagen adjunta. Hago esto con doble intención, que te encargues de transcribir el código y que aprendas al momento de hacerlo y también porque resulta más fácil y agradable de leer por lo colores y sobre todo si estás desde la aplicación, el código no te saldrá "desordenado".
Saludos!!
Adjuntos:
Otras preguntas
Contabilidad,
hace 7 meses
Salud,
hace 7 meses
Ciencias Sociales,
hace 7 meses
Matemáticas,
hace 1 año
Castellano,
hace 1 año
Química,
hace 1 año
Biología,
hace 1 año