Las instrucciones lógicas son las instrucciones que realizan operaciones lógicas básicas como AND, OR, etc. En el microprocesador 8086, el operando de destino no necesita ser el acumulador. A continuación se muestra la tabla que muestra la lista de instrucciones lógicas:
CÓDIGO DE OPCIÓN | OPERANDO | DESTINO | EJEMPLO |
---|---|---|---|
Y | D, S | D = D Y S | Y HACHA, 0010 |
O | D, S | D = D O S | O HACHA, BX |
NO | D | D = NO de D | NO AL |
XOR | D, S | D = D XOR S | XOR AL, BL |
PRUEBA | D, S | realiza una operación AND bit a bit y afecta el registro de bandera | PRUEBA [0250], 06 |
SHR | D, C | cambia cada bit en D a la derecha C veces y 0 se almacena en la posición MSB | SHR AL, 04 |
SHL | D, C | cambia cada bit en D a la izquierda C veces y 0 se almacena en la posición LSB | HACHA SHL, BL |
TDR | D, C | rota todos los bits en D a la derecha C veces | ROR BL, CL |
ROL | R, C | rota todos los bits en D a la izquierda C veces | ROL BX, 06 |
RCR | D, C | rota todos los bits en D a la derecha junto con la bandera de acarreo C veces | RCR BL, CL |
RCL | R, C | rota todos los bits en D a la izquierda junto con la bandera de acarreo C veces | RCL BX, 06 |
Aquí D significa destino, S significa fuente y C significa contar. Pueden ser registros, datos o direcciones de memoria.