MICROPROCESADORES. ANL C, <orig.bit>: Y lógico entre el bit y el indicador de acarreo.



Documentos relacionados
CONJUNTO DE INSTRUCCIONES PARA LA FAMILIA DEL 51

MICROPROCESADORES PARTES DE UN MICROPROCESADOR

Tablas familia MCS-51 (8051)


La Unidad Procesadora.

MODOS DE DIRECCIONAMIENTO DEL µc51

Computación I Representación Interna Curso 2011

Relación de Problemas I

Instrucciones para programar el PIC16F877

BLOQUE 3 (PARTE 2) MICROCONTROLADOR 8051 DESCRIPCIÓN GENERAL

6-REGISTROS DEL 8086 Y DEL 80286

Usos de los puertos. Especificaciones Eléctricas del 80C52. IOL ( corriente drenada) max = ~15mA ésta es una especificación absoluta máxima

Tema 2. Diseño del repertorio de instrucciones

Nibble Sirve para representar números hexadecimales. ( 0-9 A F) Sirve para representar números BCD (0...9)

La memoria principal. Los subsistemas de E/S. Los buses del sistema

3.2 Operaciones aritmético-lógicas en Pascal

Guía 01: Sistemas Numéricos

Ejemplo del uso de las subrutinas

ARITMÉTICA EN PUNTO FLOTANTE

PLC CONTROLADOR LOGICO PROGRAMABLE

Máster universitario en automatización de procesos industriales

Tema 5 Repertorios de instrucciones: Modos de direccionamiento y formato

2.4. Modos de direccionamiento Distintas formas que tiene la arquitectura para especificar la ubicación de los operandos.

Arquitectura intel Preámbulo de OSO para alumnos formados en el procesador MIPS. Asignatura Sistemas Operativos Murcia abril de 2005

EL LENGUAJE DE LAS COMPUTADORAS

UNIVERSIDAD TECNOLÓGICA NACIONAL FACULTAD REGIONAL CÓRDOBA EL LENGUAJE DE LOS DATOS EN LA PC Y SU FORMA DE ALMACENAMIENTO

Entorno de Ejecución del Procesador Intel Pentium

FORMATO BINARIO DE NÚMEROS NEGATIVOS

CONJUNTO DE INSTRUCCIONES DEL MICROCONTROLADOR Regreso al menú principal

Operación de Microsoft Word

SOLECMEXICO Página 1 DISEÑO DE CIRCUITOS A PARTIR DE EXPRESIONES BOOLEANAS

UN SIMULADOR DE UNA MAQUINA COMPUTADORA COMO HERRAMIENTA PARA LA ENSEÑANZA DE LA ARQUITECTURA DE COMPUTADORAS

COMPOSICION DE LOS ESTADOS FINANCIEROS:

Introducción a la Programación 11 O. Humberto Cervantes Maceda

Práctica 1 : INTRODUCCIÓN Práctica 1: Introducción al 8051

Electrónica Digital I (ED21) Sesión: 3 Aritmética Binaria. Ing. José C. Benítez P.

FACULTAD DE INGENIERÍA

Arquitectura de Computadores

Tarea 4.2 Memoria Virtual

Materia Introducción a la Informática

Lógica Binaria. Arquitectura de Ordenadores. Codificación de la Información. Abelardo Pardo Universidad Carlos III de Madrid

Mod. I, Unid. 1, Obj. 1 CRITERIO DE DOMINIO 1/1

Tema 2: Arquitectura del repertorio de instrucciones. Visión del computador que tiene el programador en bajo nivel.

Contenido. Sistema de archivos. Operaciones sobre archivos. Métodos de acceso a archivos. Directorio. Sistema de archivos por capas.

Por ejemplo, los números binarios sin signo que se pueden construir con 4 bits son: bit más significativo more significant bit (msb)

Comparadores UNIDAD V

Ensamblador. Interrupciones. Dentro de una computadora existen dos clases de interrupciones:

Fundamentos de Programación. Sabino Miranda-Jiménez

Representación de Datos. Representación de datos numéricos. Representación de datos caracteres. Representación de otros tipos de datos

DESARROLLO DE SISTEMAS BASADOS EN MICRONTROLADORES Y DSPs

El álgebra booleana (Algebra de los circuitos lógicos tiene muchas leyes o teoremas muy útiles tales como :

Capítulo 1: Sistemas de representación numérica Introducción. Dpto. de ATC, Universidad de Sevilla - Página 1 de 8

Universidad Autónoma de Baja California Facultad de Ingeniería Mexicali

LECCIÓN 8: CIRCUITOS Y ALGORITMOS DE MULTIPLICACIÓN DE ENTEROS

Descripción del algoritmo DES (Data Encryption Standard)

21/02/2012. Agenda. Unidad Central de Procesamiento (CPU)

Tema 2. La Información y su representación

TUTORIAL: SISTEMA DE INFORMACIÓN GEOESPACIAL (SIG)

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal)

Tema IV. Unidad aritmético lógica

Aritmética Binaria. Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid

2. Seleccionamos Ventana > Propiedades y, a continuación, el color para el trazo, el grosor de la línea y el estilo en el inspector de propiedades.

Hardware y Estructuras de Control. Memoria Virtual. Ejecución de un Programa. Ejecución de un Programa

Práctica 4 - Arquitectura CPU

Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso Introducción a la lógica binaria

REGLAMENTO DEL AJEDREZ. Tablero cuadrado 8x8 de 64 casillas con colores alternados (típicamente blanco y negro).

BUS I2C: IMPLEMENTACIÓN PRÁCTICA CON MICROCONTROLADORES PIC MEMORIAS EEPROM SERIE

Matemáticas para la Computación

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES

La ventana de Microsoft Excel

Cuadro 3: Ejecución del algoritmo de reemplazo NFU.

Capítulo 4 Procesos con estructuras de repetición

18. Camino de datos y unidad de control

ESTRUCTURA DE COMPUTADORES I (Capítulo 1: Estructura elemental de la memoria) 1/6 1-ESTRUCTURA ELEMENTAL DE LA MEMORIA

UNIDADES DE ALMACENAMIENTO DE DATOS

Introducción al NASM. Convenciones de colores

Conceptos básicos: 1,2 puntos

Informática Básica: Representación de la información

Informática I Notas del curso

Capítulo 4 Gestión de memoria

Ejemplos de programación para PLC S5 100

Tema I. Sistemas Numéricos y Códigos Binarios

PROBLEMAS DE FUNDAMENTOS DE TECNOLOGÍA DE COMPUTADORES T5. MEMORIAS

Programación de los Microcontroladores 8052/8051 (II)

Capitulo V Administración de memoria

UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3

COMPUTADORES SEGMENTADOS (DLX)

Autómata Siemens S7-200

Informática Bioingeniería

Operaciones Aritméticas en Números con Signo

T5.- Gestión de discos Estructura física del disco duro. TEMA 5 GESTIÓN DE DISCOS Estructura física del disco duro.

ARITMÉTICA Y CODIFICACIÓN

7.5. Registros, contadores y registros de desplazamiento


Solución de problemas de copia. Problemas y soluciones frecuentes Mensajes de estado de la copia Mensajes de error de la copia...

Práctica 1: Sencillo Juego en Ensamblador

SISTEMAS DE NUMERACIÓN. Sistema decimal

Tema 3 : Algebra de Boole

Sistemas de numeración

Lo que definimos como CPU (Central Process Unit) o Unidad Central de Proceso, está estructurado por tres unidades operativamente diferentes:

Transcripción:

Instrucciones Booleanas. El 8051 contiene un completo procesador Booleano (por bits), el cual permite ejecutar instrucciones de limpieza, establecimiento o complementación de un solo bit, y operaciones de AND y OR entre bits, las principales instrucciones son: ANL <dest.byte>, <orig.byte>: Y lógico. ANL realiza la operación lógica Y entre la variable origen y la variable destino. Los indicadores no se modifican. Cuando el operando destino es el acumulador, el operando origen puede ser un registro, una dirección directa, una dirección indirecta por registro o un dato inmediato. Cuando el operando destino es una dirección directa, el origen debe ser bien un dato inmediato o bien el acumulador. Ejemplo.- Instrucción ANL <destino.byte>,<origen.byte> El acumulador contiene 0C3H (11000011 B) y el registro R0 contiene 0AAH (10101010 B). La instrucción ANL A,R0 colocará el valor 82H (10000010 B) en el acumulador. ANL C, <orig.bit>: Y lógico entre el bit y el indicador de acarreo. Si el valor del bit origen es un 0 lógico, el indicador de acarreo C se pone a 0. Si el valor del bit es 1, el estado del indicador de acarreo no se modifica. El signo "/" delante del operando origen es interpretado por el ensamblador como complemento lógico. En tal caso, la operación realizada es un Y lógico entre el inverso del bit origen y el indicador de acarreo, pero el estado del bit origen no se modifica Ejemplo.- Instrucción ANL C,<origen.bit>. En el ejemplo que sigue, el indicador de acarreo se pone a 1 si y sólo si P1.0 = 1, ACC.7 = 1 y OV = 1. ANL C,P1.0 ANL C,ACC.7 ANL C,OV ;Cargar una E/S en el indicador C ;Y lógico con el bit 7 del acumulador ;Y lógico con el bit de OV. ORL <dest.byte>,<orig.byte>: O lógico. Se realiza un O lógico entre el byte origen y el byte destino. El resultado es colocado en el operando destino. No se modifica ningún indicador. Los dos operandos pueden presentarse en 6 combinaciones de modos de direccionamiento. Cuando el acumulador actúa como operando destino, el operando origen puede ser un registro, una dirección directa, un direccionamiento indirecto por registro o un dato inmediato; cuando el acumulador actúa como operando destino, el operando origen puede ser un registro, una dirección directa, un direccionamiento indirecto por registro o un dato inmediato; cuando el operando destino es una dirección directa, el operando origen puede ser el acumulador o un dato inmediato. Ejemplo.- Instrucción ORL <destino.byte>,<origen.byte> Ing. Celedonio E. Aguilar Meza 47

El acumulador contiene el valor 0C3H (11000011 B) y R0 contiene el valor 55H (01010101 B). Después de la ejecución de la instrucción ORL A,R0 el acumulador recibirá el valor 0D7H (11010111 B). ORL C, <orig.bit>: O lógico de bits. Pone a 1 el indicador de acarreo si el bit origen está a 1. El indicador de acarreo es utilizado como "acumulador" por el procesador lógico. El signo "/" que eventualmente precede al bit operando indica que la operación O debe efectuarse con el inverso del estado de este bit. El bit origen no es modificado por esta operación. Ejemplo Instrucción ORL C,<origen.bit> Poner a 1 el indicador de acarreo C si P1.0 = 1, o si ACC.7 = 1, o si OV = 0. MOV C,P1.0 ;cargar el indicador de acarreo con P1.0 ORL C,ACC.7 ;O lógico con ACC.7 ORL C,/OV ;O lógico con el complemento de OV XRL <dest.byte>,<orig.byte>: O lógico exclusivo. Se realiza un O exclusivo entre el byte origen y el byte destino. El resultado es colocado en el operando destino. No se modifica ningún indicador. Los dos operandos pueden presentarse en 6 combinaciones de modos de direccionamiento. Cuando el acumulador actúa como operando destino, el operando origen puede ser un registro, una dirección directa, un direccionamiento indirecto por registro o un dato inmediato; cuando el operando origen puede ser el acumulador o un dato inmediato. Ejemplo Instrucción XRL <destino.byte>,<origen.byte> El acumulador contiene el valor 0C3H (11000011 B) y R0 contiene el valor 0AAH (10101010 B). Después de la ejecución de la instrucción XRL A,R0 el acumulador recibirá el valor 69H (01101001 B).Cuando el operando destino es una dirección directa, esta instrucción permite invertir bits de la RAM interna o de los registros físicos. Los bits que se invierten son determinados por un byte de máscara que puede ser una constante en el programa o el resultado de un cálculo realizado sobre el acumulador. La instrucción XRL P1,#00110001 B invierte los bits 0, 4 y5 del puerto P1. Ing. Celedonio E. Aguilar Meza 48

ANL C,bit ; C C.AND. bit ANL C,/bit ; C C.AND..NOT. bit ORL C,bit ; C C.OR. bit ORL C,/bit ; C C.OR..NOT. bit CLR A ; A 0 CLR C ; C 0 CLR bit ; bit 0 SETB C ; C 1 SETB bit ; bit 1 CPL A ; A.NOT.A CPL C ; C.NOT. C CPL bit ; bit.not. bit RL A ; A ROT IZQ A RR A ; A ROT DER A RLC A ; A ROT IZQ A, CON C RRC A ; A ROT DER A, CON C CLR A: Puesta a cero del acumulador. Todos los bits del acumulador se ponen a 0. No se modifica ningún indicador. Ejemplo.- Instrucción CLR A El acumulador A vale 5CH (01011100 B). La instrucción da al acumulador el valor 00H (00000000 B). CLR bit: Puesta a cero de un bit. Se borra (se pone a 0) el bit especificado. No se modifica ningún indicador (salvo, en su caso, el acarreo). Esta instrucción puede actuar sobre el indicador de acarreo o sobre un bit direccionable directamente (en RAM interna). Ejemplo.- La instrucción CLR P1.2 Si el buffer del puerto 1 vale 5DH (01011101 B), a instrucción da al Buffer el valor 69H (01011001 B). CPL A: Complemento del acumulador. Se invierten (complemento a 1) todos los bits del acumulador. Los bits a 1 se ponen a 0 y viceversa. No se modifica ningún indicador. Ejemplo.- Instrucción CPL A Si el acumulador A vale 5CH 01011100 B), después de la instrucción el acumulador tendrá el valor A3H (10100011 B). Ing. Celedonio E. Aguilar Meza 49

CPL bit: Complemento de un bit. Se invierte el bit indicado. No se modifica ningún indicador (salvo, en su caso, el de acarreo). Esta instrucción puede actuar sobre el indicador de acarreo o sobre los bits direccionables directamente. Ejemplo.- Instrucción CPL bit El puerto 1 tiene el valor 5DH (01011101 B). La secuencia CPL P1.1 CPL P1.2 da a este puerto el valor 5BH (01011011 B). SETB bit: Puesta a 1 de un bit. Las instrucciones SETB ponen a 1 el bit especificado por el operando. Ejemplo.- Instrucción SETB bit El indicador de acarreo está a 0. El puerto P1 vale 34H (00110100 B). La secuencia SETB C SETB P1.0 pone el indicador de acarreo a 1 y da al puerto P1 el valor 35H (00110101 B). RL A: Rotación a la izquierda. Los 8 bits del acumulador se desplazan una posición a la izquierda. El bit 7 se coloca en la posición menos significativa (bit 0). Esta operación no modifica ningún indicador. Ejemplo.- Instrucción RL A El acumulador contiene el valor 8BH (10001011 B). La instrucción da al acumulador el valor 17H (00010111 B). Ing. Celedonio E. Aguilar Meza 50

RR A: Rotación a la derecha. Los 8 bits del acumulador se desplazan un lugar a la derecha. El bit 0 se coloca en la posición más significativa (bit 7). Esta operación no modifica ningún indicador. Ejemplo.- La Instrucción RR A El acumulador contiene el valor 8BH (10001011 B). La instrucción da al acumulador el valor 0C5H (11000101 B). RLC A: Rotación a la izquierda incluyendo C. Los 8 bits del acumulador se desplazan una posición a la izquierda. El bit 7 se coloca en el indicador de acarreo, y el contenido de éste en la posición menos significativa (bit 0). Esta operación solo modifica el acarreo C y P. Ejemplo.- Instrucción RLC A El acumulador contiene el valor 8BH (10001011 B) y el acarreo C vale 0. La instrucción da al acumulador el valor 16H (00010110 B) y C=1. RRC A: Rotación a la derecha incluyendo C. Los 8 bits del acumulador se desplazan un lugar a la derecha. El bit 0 se coloca en el indicador de acarreo, y el contenido de éste en la posición más significativa (bit 7). Esta operación solo modifica el acarreo C y P. Ejemplo.- La Instrucción RRC A El acumulador contiene el valor 8BH (10001011 B) y el acarreo C vale 0. La instrucción da al acumulador el valor 62H (01100010 B) y C=1. Ing. Celedonio E. Aguilar Meza 51

SWAP A: Permutación de los 4 bits altos del acumulador con los 4 bits bajos. La instrucción "SWAP A" intercambia los 4 bits más significativos del acumulador con los 4 bits menos significativos. Esta instrucción reemplaza con ventaja a 4 instrucciones de rotación. Ejemplo.- La Instrucción SWAP A El acumulador contiene el valor 0C5H (11000101 B). La instrucción da al acumulador el valor 5CH (01011100 B). Ing. Celedonio E. Aguilar Meza 52

INSTRUCCIONES DE LOGICA BOOLEANA NEMONICO DESCRIPCION BYTES PERIODOS OSCILADOR ANL A,Rn AND entre un registro y el acumulador. 1 12 ANL A,data AND entre un registro RAM y el acumulador. 2 12 ANL A, @ Ri AND entre el contenido de un registro direccionado por Ri y el acumulador. 1 12 ANL A,#data AND entre un valor o dato constante y el acumulador. 2 12 ANL data,a AND entre el acumulador y un registro RAM. 2 12 ANL data,#data AND entre un registro RAM y un valor o dato constante. 3 24 ANL C,bit AND entre el BIT de acarreo y un BIT de un registro de RAM 2 24 ANL C,/bit AND entre el BIT complementado del acarreo y un BIT de un registro RAM. 2 24 ORL A,Rn OR entre un registro y el acumulador. 1 12 ORL A,data OR entre un registro RAM y el acumulador. 2 12 ORL A,@Ri OR entre el contenido d un registro direccionado por Ri y el acumulador 1 12 ORL A,#data OR entre un valor o dato constante y el acumulador. 2 12 ORL data,a OR entre el acumulador y un registro RAM. 2 12 ORL data,#data OR entre un registro RAM y un valor o dato constante 3 24 ORL C,bit OR entre el BIT de acarreo y un BIT de un registro RAM. 2 24 ORL C,/bit OR entre el BIT complementado del acarreo y un BIT de un registro RAM 2 24 XRL A,Rn O EXCLUSIVA entre un registro y el acumulador. 1 12 XRL A,data O EXCLUSIVA entre un registro RAM y el acumulador. 2 12 XRL A,@Ri O EXCLUSIVA entre el contenido de un registro direccionado por Ri y el acumuladot 1 12 XRL A,#data O EXCLUSIVA entre un valor o dato constante y el acumulador. 2 12 XRL data,a O EXCLUSIVA entre el acumulador y un registro RAM. 2 12 XRL data,#data O EXCLUSIVA entre un registro RAM y un valor o dato constante. 3 24 SETB C Fuerza el acarreo a 1. 1 12 Ing. Celedonio E. Aguilar Meza 53

SETB bit Fuerza un BIT de un registro RAM a 1. 2 12 CLR A Fuerza el acumulador a OOH. 1 12 CLR C Fuerza el acarreo a O. 1 12 CLR bit Fuerza a un BIT de un registro RAM a 0. 2 12 CPL A Complementa el acumulador. 1 12 CPL C Complementa el acarreo. 1 12 CPL bit Complementa un BIT de un registro RAM. 2 12 RL A Rotación del acumulador un BIT hacia la izquierda. 1 12 RLC A Rotación del acumulador un BIT hacia la izquierda con acarreo. 1 12 RR A Rotación del acumulador un BIT hacia la derecha. 1 12 RRC A Rotación del acumulador un BIT hacia la derecha con acarreo. 1 12 SWAP A Intercambio de nibbles en el acumulador. 1 12 Ing. Celedonio E. Aguilar Meza 54