5ta Clace
Posteado por Raúl Alejandro QL
Continuando con las lecciones, veremos las instrucciones logicas y su forma de uso.
Esta instruccion es la equivalente a AND logico, y se ejecutara entre dos datos, el resultado se guardara en el dato de la izquierda, estas instrucciones son flexibles ya que pueden ser ejecutadas con los acumuladores o directamente con una diireccion de memoria de datos.
; los datos se guardan en la variable de la izquierda ; se pueden usar los acumuladores.
anl a,55h ; a = a (and) M[33h] ; se puede modificar una memoria directamente anl 42h,a ; M[42] = M[42] (and) a ; se puede hacer and con un numero fijo add 56h,#0Fh ; M[42] = M[42] (and) 0Fh dato
Esta instruccion es la equivalente a OR logico, y se ejecutara entre dos datos, el resultado se guardara en el dato de la izquierda, estas instrucciones son flexibles ya que pueden ser ejecutadas con los acumuladores o directamente con una diireccion de memoria de datos.
; los datos se guardan en la variable de la izquierda ; se pueden usar los acumuladores. orl a,55h ; a = a (and) M[33h] ; se puede modificar una memoria directamente orl 42h,a ; M[42] = M[42] (and) a ; se puede hacer and con un numero fijo orl 56h,#0Fh ; M[42] = M[42] (and) 0Fh dato
Esta instruccion es la equivalente a OR EXCLUSIVO logico, y se ejecutara entre dos datos, el resultado se guardara en el dato de la izquierda, estas instrucciones son flexibles ya que pueden ser ejecutadas con los acumuladores o directamente con una diireccion de memoria de datos.
; los datos se guardan en la variable de la izquierda ; se pueden usar los acumuladores. xrl a,55h ; a = a (and) M[33h] ; se puede modificar una memoria directamente xrl 42h,a ; M[42] = M[42] (and) a ; se puede hacer and con un numero fijo xrl 56h,#0Fh ; M[42] = M[42] (and) 0Fh dato
La instruccion "CLR" (Limpiar, CLEAR) se ejecuta solamente con el acumulador, y coloca el valor de cero a este. La instruccion "CPL" (complementar) se ejecuta solamente con el acumuladro y cambia los "1" por "0" y viceversa en el valor que posea el acumulador.
; instrucciones se realizan con el acumulador ; clear limpia el acumulador a cero clr a ; a = 00 ; complementa el acumulador. cpl a ; a = not(a)
Las instrucciones para rotar a la izquierda y la derecha se ejecutan solo con el acumulador, para rotar a la izquierda se utiliza "rl" para rotar a la derecha se usa "rr" y para rotar con carry sera, "rlc" y "rrc". Rotar en este caso significa que los datos se rotaran en anillo, en anillo por que se entiende que el bit 7 se conecta al bit0, y cuando es con acarreo la coneccion en anillo es el bit 7 con el carry y luego el bit 0, formando siempre un anillo.
; instrucciones de rotacion ; rotar el acumulador a la izquierda ; el bit 0 recorre al bit 1, y el 1 al 2 ; el 2 al 3 y asi ... el bit 7 al bit 0 rl a ; rotar a la izquierda. ; rotar el acumulador a la derecha ; el bit 7 recorre al bit 6, y el 6 al 5 ; el 5 al 4 y asi ... el bit 0 al bit 7 rr a ; rotar a la derecha.
La instruccion "SWAP" intercambia los 4 bits mas significativos con los otros 4 bits mas significativos
; instrucciones de intercamnbio ; intercambio de nival bajo y alto ; los 4 bits mas significativos se intercambian ; con los 4 bits menos significativos swap a ; rotar a la izquierda.
Estas instrucciones nos serviran durante el proceso de programación del microcontrolaador.
Video Simulacion