SUMA SIN ACARREO:
Consiste en sumar al contenido del registro “A” un número y obtener el resultado en el registro “A”. El indicador de acarreo no se tiene en cuenta para esta operación. Su esquema sería:
Consiste en sumar al contenido del registro “A” un número y obtener el resultado en el registro “A”. El indicador de acarreo no se tiene en cuenta para esta operación. Su esquema sería:

SUMA CON ACARREO:
Exactamente igual que la anterior, pero se suma también el indicador de acarreo del registro “F”. De esta forma, se puede incluir en la suma el acarreo procedente de una suma anterior. Su esquema sería:
Exactamente igual que la anterior, pero se suma también el indicador de acarreo del registro “F”. De esta forma, se puede incluir en la suma el acarreo procedente de una suma anterior. Su esquema sería:

RESTA SIN ACARREO:
Consiste en restar un número del contenido del registro “A”, y obtener el resultado en este mismo registro. El indicador de acarreo no interviene en la operación. Se consideran números negativos los superiores a 127 (7Fh) es decir, el número 255 (FFh) se considera “-1″, el 254 (FEh) se considera “-2″ y así sucesivamente, hasta 128 (80h) que se considera “-128″. El paso de 127 a 128 o viceversa se indica poniendo a “1” el flag de “overflow” (P/V) del registro “F”. Su esquema sería:
Consiste en restar un número del contenido del registro “A”, y obtener el resultado en este mismo registro. El indicador de acarreo no interviene en la operación. Se consideran números negativos los superiores a 127 (7Fh) es decir, el número 255 (FFh) se considera “-1″, el 254 (FEh) se considera “-2″ y así sucesivamente, hasta 128 (80h) que se considera “-128″. El paso de 127 a 128 o viceversa se indica poniendo a “1” el flag de “overflow” (P/V) del registro “F”. Su esquema sería:

RESTA CON ACARREO:
Igual que el anterior, salvo que también se resta el indicador de acarreo (CF) del registro “F”. Su esquema sería:
Igual que el anterior, salvo que también se resta el indicador de acarreo (CF) del registro “F”. Su esquema sería:

INCREMENTO:
Consiste en sumar uno al contenido de un registro que se especifica en la instrucción. Su esquema es:
Consiste en sumar uno al contenido de un registro que se especifica en la instrucción. Su esquema es:

Donde “R” representa un
registro cualquiera de 8 a 16 bits. Si se trata de un registro doble (de
16 bits) se incrementa el registro de orden bajo (por ejemplo, en el
“BC” se incrementa “C”), y si ello hace que este pase a valer “0”, se
incrementa también el de orden alto.
DECREMENTO:
Es la inversa de la anterior, consiste en restar uno al contenido de un registro. Su esquema es:
Es la inversa de la anterior, consiste en restar uno al contenido de un registro. Su esquema es:

Si se trata de un registro
doble, se decrementa el de orden bajo y, si esto hace que pase a valer
255 (FFh), se decrementa también el de orden alto.
Si el registro incrementado o decrementado es de 8 bits, resultan afectados los indicadores del registro “F”.
Si el registro incrementado o decrementado es de 8 bits, resultan afectados los indicadores del registro “F”.
COMPLEMENTO:
Consiste en realizar un “complemento a 1″ del acumulador, es decir, cambiar los “unos” por “ceros” y los “ceros” por “unos”.
Consiste en realizar un “complemento a 1″ del acumulador, es decir, cambiar los “unos” por “ceros” y los “ceros” por “unos”.

NEGACIÓN:
Consiste en realizar un “complemento a 2″ del acumulador, es decir, realizar un “complemento a 1″ y, luego, sumarle “1”. Lo que se obtiene es el “negativo” del número que teníamos en el acumulador. El efecto es el mismo que si restáramos el acumulador de “cero”, es decir:
Consiste en realizar un “complemento a 2″ del acumulador, es decir, realizar un “complemento a 1″ y, luego, sumarle “1”. Lo que se obtiene es el “negativo” del número que teníamos en el acumulador. El efecto es el mismo que si restáramos el acumulador de “cero”, es decir:

Instrucciones lógicas
incluyen las operaciones que se realizan con los operadores “AND”, “OR” y “XOR”.
AND
and AL, BL al AND bl –> al
OR
or AL, BL al OR bl –> al
XOR
xor AL, BL al XOR bl –> al
NOT
Esta instruccion logica consiste en negar cualquier otra instruccion invirtiendo sus valores.

Las
instrucciones lógicas de dos operandos (and, or y xor) ponen siempre a
‘0’ los bits CF y OF de registro de estado después de ejecutarse (debe
tenerse en cuenta que el estado de estos bits sólo tiene significado
tras la ejecución de las instrucciones aritméticas). Los bits SF y ZF se
modifican siguiendo los mismos criterios que en las instrucciones
aritméticas.
La instrucción lógica de un operando (not) no modifica ningún bit del registro de estado tras su ejecución.
No hay comentarios:
Publicar un comentario