6. Instrucciones de operación lógica
Fuente OP: registro de propósito general de 8/16 bits, operando de memoria o datos inmediatos
Objeto OP: registros de propósito general y operandos de memoria
Excepto por la operación "no", otras instrucciones harán OF=CF=0
1. Operación lógica Y
Y con
Se puede usar para cambiar un bit específico o probar el contenido de un bit
2. Operación lógica OR (1 de 1, todo 0 de 0)
Formato: O artículo OP, fuente OP
Función: realiza una operación OR en dos operandos y devuelve el resultado al destino OP
Descripción: se puede usar para combinar una determinada palabra o establecer una determinada posición en 1
ejemplo:
HACHA MOV, 8888H;
O AX, 00FFH; AX=88FFHH, establezca los 8 bits inferiores de AX en 1 y los demás bits permanecen sin cambios. Es decir, el bit 1 correspondiente es 1 y el bit 0 correspondiente permanece sin cambios.
Ejemplo: convertir códigos BCD no combinados en AL a códigos ASCII.
O AL, 30H
3. Instrucción de operación lógica XOR (igual que 0, diferente a 1)
Formato: destino XOR OP, fuente OP
Función: la operación XOR se realiza en dos operandos y el resultado se envía de vuelta al OP.
Descripción: Se utiliza para invertir un determinado número binario bit a bit o borrar un determinado registro a 0
Ejemplo: XOR AL, 0FFFH; AL datos negación bit a bit
Ejemplo: MOV AX, 3333H
XOR HACHA, 00FFH;
Resultado: AX=33CCH, los datos AH permanecen sin cambios y los datos AL se niegan, es decir, el 0 correspondiente permanece sin cambios y el 1 correspondiente se niega.
Ejemplo: borrar el registro a 0 (hay 4 instrucciones para lograr el propósito de borrar AX):
XOR AL, AL; AL0
HACHA DE MOVIMIENTO, 0
SUBEJE, EJE
Y HACHA,0
4. Instrucción de operación lógica NOT
Formato: NO OP
Función: invertir el operando bit a bit y enviarlo de vuelta al control remoto
ejemplo:
HACHA DE MOVIMIENTO, 1
SIN IMPUESTOS; AX=0FFFEH
Aviso:
(1) Esta instrucción solo realiza la operación de negación, no la instrucción del código de negación, y también niega el bit de signo.
(2) No afecta el bit de bandera
5. Instrucciones de prueba
Formato: elemento OP de PRUEBA, fuente OP
Función: Realice la operación AND en el destino OP y la fuente OP, no devuelva el resultado, solo configure la bandera de acuerdo con el resultado
Explicación: se utiliza principalmente para detectar que algunos bits del operando de destino son 1 o 0. De acuerdo con el resultado de la prueba, se decide pasar a
Ejemplo: prueba si el bit D15 en AX es 1 o 0
PRUEBA AX, 8000H; Si D15 es 1, ZF=0, de lo contrario ZF=1
Resumir:
(1) Las PRUEBAS Y O XOR afectan a la bandera, CF = 0, OF = 0, y PF, SF, ZF están determinados por el resultado, y AF no tiene sentido. Tales instrucciones se pueden usar para borrar CF, y se usan a menudo para dividir y deletrear.
(2) NOT no afecta a las banderas
ejemplo