+ All Categories
Home > Documents > microcontroladores operaciones logicas

microcontroladores operaciones logicas

Date post: 02-Jan-2016
Category:
Upload: ismael-echenique
View: 18 times
Download: 1 times
Share this document with a friend
5
include<P16F877.inc> CBLOCK 20H var1 ENDC ; var1 equ 20H org 00H goto inicio inicio movlw b'11111111' xorlw b'11111111' crlw movlw b'00001111' addlw b'00000001' movlw b'00001011' sublw b'00000111' movlw b'00000101' andlw b'00001111' movlw b'00001001' iorlw b'00010000' END
Transcript
Page 1: microcontroladores operaciones logicas

include<P16F877.inc>

CBLOCK 20H

var1

ENDC

; var1 equ 20H

org 00H

goto inicio

inicio

movlw b'11111111'

xorlw b'11111111'

crlw

movlw b'00001111'

addlw b'00000001'

movlw b'00001011'

sublw b'00000111'

movlw b'00000101'

andlw b'00001111'

movlw b'00001001'

iorlw b'00010000'

END

Operaciones lógicas o aritméticas

Page 2: microcontroladores operaciones logicas

Objetivo

Al finalizar la práctica el estudiante será capaz de utilizar el software MPLAB como una herramienta para la creación de proyectos basados en el pic 16F877A, además de obtener el conocimiento para la realización de una suma en números binarios para el desarrollo de varias aplicaciones en diferentes proyectos para un futuro.

Desarrollo

Para realizar estas operaciones utilizamos del set de instrucciones, diferentes comandos para realizar cada una de ellas y las veremos en el registro status en el bit Z.

Para esto tenemos que Z

Z=Cero

1= El resultado de alguna operación lógica o aritmética es cero

0= El resultado de alguna operación lógica o aritmética es diferente de cero

Dependiendo de nuestro valor y comando de la operación que indiquemos el resultado se verá reflejado en este registro (Z). Mientras que nuestra operación sea distinta de cero y conlleve un acarreo, este también lo podremos observar en el registro status llamado carry o digit carry.

DC= digit carry C= carry1= Acarreo del 4to bit 1= Acarreo del bit más significativo 0= No hay acarreo 0= No hay acarreo

También este bit del registro status cambiara conforme a la operación realizada, cambiando de 0- 1 como se explica.

Las operaciones aritméticas o lógicas que tenemos en el set de instrucciones son:

xorlw= Es una OR exclusiva que contiene una w como una constante.

addlw= Hace una adición con un valor constante.

sublw= Sustracción de una constante.

andlw= Es una operación AND con valor constante.

iorlw= Realiza una operación OR además de asignar un valor constante.

Como trabaja

Page 3: microcontroladores operaciones logicas

En el programa vamos a comprobar que nuestras operaciones lógicas funciones correctamente con forme nos indica la función del bit Z.

Comparación

Para nuestra primera operación logia o aritmética, tenemos en nuestro código los siguientes comandos

inicio

movlw b'11111111'

xorlw b'11111111'

crlw

Podemos observar que en nuestro registro STATUS en el bit Z vemos cómo cambia nuestro bit a 1, esto nos indica que nuestra operación lógica es igual a 0.

Suma

Para nuestra segunda operación tenemos lo siguiente:

movlw b'00001111'

addlw b'00000001'

Observamos que en esta operación nuestro bit Z cambia a 0, quiere decir que nuestra operación es distinta de 0.

Sustracción

Para esta operación nuestro bit en el registro STATUS también nos va a dar 0

movlw b'00001011'

sublw b'00000111'

Con esta operación también tenemos un 0 como resultado.

AND

Igualmente en esta operación obtenemos un 0

Page 4: microcontroladores operaciones logicas

movlw b'00000101'

andlw b'00001111'

OR

Para nuestra última operación obtendremos un 0 en el registro Z

movlw b'00001001'

iorlw b'00010000'

Conclusión

Con la pasada practica hemos aprendido como realizar un código que nos ayudara a sumar números binarios obteniendo practica y conocimiento en el software MPLAB ayudándonos a programar el pic 16F877A, utilizando algunos de las operaciones o componentes básicos de dicho programa.


Recommended