2. Operaciones Lógicas
Israel Alexander Campoverde
Eduardo Alexander León Castillo
Jhomaira Alexandra Pérez Quezada
David Steven Pacheco Calle
Katty Jackeline Salinas Rosales
Facultad de la Energía, las Industrias y los Recursos Naturales No Renovables
Carrera de Ingeniería en Sistemas/Computación
Junio, 2020
Loja, Ecuador
3. Operaciones lógicas
Ensamblador cuenta con un grupo de cuatro instrucciones
lógicas a nivel de bit, las cuales con excepción de NOT
requieren de dos operandos, estas son las siguientes:
4. AND
La instrucción AND se utiliza para admitir expresiones lógicas mediante la
operación AND a nivel de bit. La operación AND a nivel de bit devuelve 1, si los
bits coincidentes de ambos operandos son 1, de lo contrario, devuelve 0.
6. OR
La instrucción OR se utiliza para admitir la expresión lógica mediante la
operación OR a nivel de bits. El operador OR a nivel de bit devuelve 1, si los bits
coincidentes de uno o ambos operandos son uno. Devuelve 0, si ambos bits son
cero.
8. XOR
La instrucción XOR implementa la operación XOR bit a bit. La operación XOR establece el
bit resultante en 1, si y solo si los bits de los operandos son diferentes. Si los bits de los
operandos son iguales (ambos 0 o ambos 1), el bit resultante se borra a 0.
10. NOT
La instrucción NOT o negación requiere un solo operando y su función es
cambiar el estado de los bits del mismo, es decir, cambiar los ceros por unos y
los unos por ceros.
NOT ax ;Se aplica la negación al valor del
registro ax.
11. TEST
La instrucción TEST funciona igual que la operación AND, pero a diferencia de la
instrucción AND, no cambia el primer operando. Entonces, si necesitamos
verificar si un número en un registro es par o impar, también podemos hacerlo
usando la instrucción TEST sin cambiar el número original.
TEST AL, 01H
JZ EVEN_NUMBER
12. Conclusiones
• Ensamblador cuenta con un grupo de cuatro instrucciones lógicas a nivel de
bit, las cuales con excepción NOT requieren de dos operandos.
• Su aplicación más importante de las operaciones lógicas sea empaquetar
en un byte varias variables booleanas, ocupando cada una de ellas un solo
bit.
• La mayoría de instrucciones trabajan con operandos desde fuente a destino
• Admiten todos los modos de direccionamiento excepto los dos operandos
en memoria.