4.operación de la unidad aritmética y lógica

20
Operación de la unidad de aritmética y lógica 4.1 Arquitectura del Alu 4.2 Registros Alu 4.3 Representación Interna Alu 4.4 Suma y Registro Alu 4.5 Multiplicación y División Alu 4.6 Operaciones Lógicas Alu INSTITUTO TECNOLÓGICO “OSCAR E. REYES” ORGANIZACIÓN DE COMPUTADORES TERCER SEMESTRE

Transcript of 4.operación de la unidad aritmética y lógica

Page 1: 4.operación de la unidad aritmética y lógica

Operación de la unidad de aritmética y lógica

4.1 Arquitectura del Alu

4.2 Registros Alu

4.3 Representación Interna Alu

4.4 Suma y Registro Alu

4.5 Multiplicación y División Alu

4.6 Operaciones Lógicas Alu

INSTITUTO TECNOLÓGICO “OSCAR E. REYES”

ORGANIZACIÓN DE COMPUTADORES

TERCER SEMESTRE

Page 2: 4.operación de la unidad aritmética y lógica

Arquitectura del Alu (Unidad Lógica Aritmética )

La Unidad Aritmético Lógica (UAL), o Arithmetic Logic Unit (ALU), es un dispositivo (circuito digital), diseñado y construido para llevar a cabo las operaciones elementales como las operaciones aritméticas (suma, resta), operaciones lógicas (SI O NO), y operaciones de comparación o relacionales entre dos números.  Muchos tipos de circuitos electrónicos necesitan realizar algún tipo de operación aritmética, así que incluso el circuito dentro de un reloj digital tendrá una ALU minúscula que se mantiene sumando 1 al tiempo actual, y se mantiene comprobando si debe activar el pitido del temporizador, etc… Por mucho, los más complejos circuitos electrónicos son los que están construidos dentro de los chips de microprocesadores modernos como el Pentium. Por lo tanto, estos procesadores tienen dentro de ellos un ALU muy complejo y poderoso. De hecho, un microprocesador moderno (y los mainframes) pueden tener múltiples núcleos, cada núcleo con múltiples unidades de ejecución, cada una de ellas con múltiples ALU.

Page 3: 4.operación de la unidad aritmética y lógica

Registros AluSu misión es realizar las operaciones con los datos que recibe, siguiendo las indicaciones dadas por la unidad de control. El nombre de unidad aritmética y lógica se debe a que puede realizar operaciones tanto aritméticas como lógicas con los datos transferidos por la unidad de control. La unidad de control maneja las instrucciones y la aritmética, y la lógica procesa los datos. Para que la unidad de control sepa si la información que recibe es una instrucción o dato, es obligatorio que la primera palabra que reciba sea una instrucción, indicando la naturaleza del resto de la información a tratar. Para que la unidad aritmética y lógica sea capaz de realizar una operación aritmética, se le deben proporcionar, de alguna manera, los siguientes datos: 1. El código que indique la operación a efectuar. 2. La dirección de la celda donde está almacenado el primer sumando. 3. La dirección del segundo sumando implicado en la operación. 4. La dirección de la celda de memoria donde se almacenará el resultado.

Page 4: 4.operación de la unidad aritmética y lógica

Los Registros son un medio de ayuda a las operaciones realizadas por la unidad de control y la unidad aritmética y lógica. Permiten almacenar información, temporalmente, para facilitar la manipulación de los datos por parte de la CPU.

Realizando una similitud con el resto del sistema informático, los registros son a la CPU como la memoria principal es a la computadora. Los registros se dividen en tres grupos principales: • Registros de Propósito General. • Registros de Segmento de Memoria. • Registros de Instrucciones.

Seguidamente se presenta una relación completa de los tres grupos de registros que contiene un microprocesador típico como puede ser el Intel 80386

Page 5: 4.operación de la unidad aritmética y lógica

Suma y Registro ALUEn este tema se da a conocer la operación de SUMA usando los registros llamado SUMADOR (ADDER) en la ALU. Este SUMADOR es un circuito digital que realiza la adición de números, este circuito sumador lo encontramos en la ALU, donde también se realizan otro tipos de operaciones, los sumadores mas comunes se especializan en números binarios. La suma y la resta son operaciones de dos palabras de 1 bit de las que se obtiene una suma y un carry. Existen distintas formas de implementar la suma y la resta. En este apartado veremos distintos circuitos combinacionales basados en distintas funciones lógicas.

Page 6: 4.operación de la unidad aritmética y lógica

Operaciones de aritmética y lógica Half-Adder es capaz de sumar dos bits a la vez. Tiene dos entradas (es decir, A y B), y dos salidas (es decir, la suma S y acarreo C), S es dos bits “XOR” de A y B, mientras que C es la ‘Y’ de A y B. Es obligatorio que la salida de un Half-Adder es la suma de dos números de un bit, con C siendo el bit significativo de estas dos salidas. A B C S

0 0 0 0

0 1 0 1

1 0 0 1

1 1 1 0

Page 7: 4.operación de la unidad aritmética y lógica

Sumador completo (FULL-ADDER). Un sumador completo que es capaz de añadir tres bits (es decir, dos bits y el acarreo de un poco de cálculo anterior). Dispone de tres entradas llamadas generalmente como A, B y C para transportar, De esta manera, full-adders se pueden encadenar en cascada y pueden ser usados para sumar número muy grandes. Entradas: (A, B, Carry In) → Salida: (Suma, Carry Out)

La etapa final la puerta “O” de salida puede ser sustituido por una puerta “XOR” sin alterar la lógica resultante. Esto se debe a que la única diferencia entre las puertas “O” y “XOR” es cuando ambas entradas sean 1. (uno)

Un Full-Adder puede ser desarrollado a partir de dos half-adders mediante la conexión de A y B a la entrada de un half-adder. La salida de un full-adder son bits suma aritmética de tres números de un bit.  

Page 8: 4.operación de la unidad aritmética y lógica

SUMA Si sumamos números decimales es común la expresión “cinco mas siete es igual a doce, entonces son dos y llevo uno”. Este “llevo uno” se conoce como el acarreo. De la misma manera se realiza una suma binaria de varios bits. Únicamente necesitamos recordar las sencillas reglas de la suma binaria de un bit. 1+1 = 0 y llevo 1 1+0 = 1 0+1 = 1 0+0 = 0 1+1+1 = 1 y llevo 1 Con estas reglas tenemos por ejemplo. Acarreo → 1 11 10010111 + 01010110 = 11101101

Page 9: 4.operación de la unidad aritmética y lógica

RESTA

La resta se lleva de manera similar en números decimales y binarios. Si en la suma existe el acarreo, en la resta existe el “préstamo”, igual que en decimales. 1. = 0 1. = 1 0. = 0  .0–1 = 1 prestando un uno al bit siguiente.

Con estas reglas tenemos por ejemplo. 11001001- 00110101 = 10010100

Page 10: 4.operación de la unidad aritmética y lógica

Multiplicacion y Division ALU

Multiplicador En diseño digital, un multiplicador / multiplicación ALU es un circuito de hardware dedicado a la multiplicación de dos valores binarios.

Una serie de técnicas digitales de la aritmética puede ser empleada para la implementación de un multiplicador digital. La mayoría de ellas implican la computación parcial de un conjunto de productos y, a continuación, sumando el conjunto.

Page 11: 4.operación de la unidad aritmética y lógica

El multiplicador implementa este algoritmo en paralelo con el circuito que se muestra a continuación: De conformidad con el método básico, una celda de el arreglo multiplica los bits en esa posición (que se reduce a una operación de Y) y agrega el resultado a un bit producto parcial que lo recibe como su entrada. Esta arquitectura trabaja para operandos sin signo.

Page 12: 4.operación de la unidad aritmética y lógica

El signo de un producto puede ser calculado inmediatamente de los signos de los operandos. Para complementar los números negativos operandos pueden complementarse, multiplicado sus magnitudes, y el producto vuelve a complementarse, si lo considera conveniente. Un complemento multiplicando puede ser manejado por los 2 del complemento sumador parcial para los productos y el signo por los shifts. Un complemento dos para enteros se puede representar como sigue:  

Multiplicación con signo

Page 13: 4.operación de la unidad aritmética y lógica

OPERACIONES LOGICASOperaciones Lógicas de Comparación.

• La puerta lógica Y, conocida por su nombre en inglés AND, realiza la función booleana de producto lógico. La ecuación característica que describe el comportamiento de la puerta AND es: F = (A)* (B)Su tabla de verdad es la siguiente: Entrada A Entrada B Salida 0 0 0 0 1 0 1 0 0 1 1 1 Su definición se puede dar, como una compuerta que entrega un 1 lógico sólo si todas las entradas están a nivel alto 1.

Page 14: 4.operación de la unidad aritmética y lógica

La puerta lógica O Más conocida por su nombre en inglés OR, realiza la operación de suma lógica. La ecuación característica que describe el comportamiento de la puerta OR es: F= A+BSu tabla de verdad es la siguiente:

0 0 0 0 1 1 1 0 1 1 1 1

Entrada A Entrada B Salida A + B 0 0 0 0 1 1 1 0 1 1 1 1 Podemos definir la puerta O como aquella que proporciona a su salida un 1 lógico si al menos una de sus entradas está a 1.

Entrada A Entrada B Salida

Page 15: 4.operación de la unidad aritmética y lógica

La puerta lógica O-exclusivaMás conocida por su nombre en inglés XOR, realiza la función booleana A’B+AB’. Su símbolo es el más (+) inscrito en un círculo.

La ecuación característica que describe el comportamiento de la puerta XOR es:

F=A B F AB A+B

Su tabla de verdad es la siguiente:

0 0 0 0 1 1 1 0 1 1 1 0

Se puede definir esta puerta como aquella que da por resultado uno, cuando los valores en las entradas son distintos. ej: 1 y 0, 0 y 1 (en una

compuerta de dos entradas)

Entrada A Entrada B Salida

Page 16: 4.operación de la unidad aritmética y lógica

Si la puerta tuviese tres o más entradas, la XOR tomaría la función de suma de paridad, cuenta el número de unos a la entrada y si son un número impar, pone un 1 a la salida, para que el número de unos pase a ser par. Esto es así porque la operación XOR es asociativa, para tres entradas escribiríamos: a (b c) o bien (a b) c.

Su tabla de verdad sería:

Entrada A Entrada B Entrada C Salida

0 0 0 0

0 0 1 1 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0

1 1 1 1

Page 17: 4.operación de la unidad aritmética y lógica

Lógica negadaPuerta NO (NOT)La puerta lógica NO (NOT en inglés) realiza la función booleana de inversión o negación de una variable lógica. Una variable lógica A a la cual se le aplica la negación se pronuncia como "no A" o "A negada".La ecuación característica que describe el comportamiento de la puerta NOT es: F = ASu tabla de verdad es la siguiente:

Entrada A Salida A 0 1 1 0 Se puede definir como una puerta que proporciona el estado inverso del que esté en su entrada.

Page 18: 4.operación de la unidad aritmética y lógica

Puerta NO-Y (NAND)La puerta lógica NO-Y, más conocida por su nombre en inglés NAND, realiza la operación de producto lógico negado. En la figura de la derecha pueden observarse sus símbolos en electrónica.La ecuación característica que describe el comportamiento de la puerta NAND es: F= A B = A + BSu tabla de verdad es la siguiente: Entrada A Entrada B Salida AB

0 0 1 0 1 1 1 0 1 1 1 0

Podemos definir la puerta NO-Y como aquella que proporciona a su salida un 0 lógico únicamente cuando todas sus entradas están a 1.

Page 19: 4.operación de la unidad aritmética y lógica

Puerta NO-O (NOR)La puerta lógica NO-O, más conocida por su nombre en inglés NOR, realiza la operación de suma lógica negada..La ecuación característica que describe el comportamiento de la puerta NOR es:

F= A + B = A * BSu tabla de verdad es la siguiente: Entrada A Entrada B Salida A + B 0 0 1 0 1 0 1 0 0 1 1 0

Podemos definir la puerta NO-O como aquella que proporciona a su salida un 1 lógico sólo cuando todas sus entradas están 0.

Page 20: 4.operación de la unidad aritmética y lógica

Puerta equivalencia (XNOR)La puerta lógica equivalencia, realiza la función booleana AB+~A~B. Su símbolo es un punto (·) inscrito en un círculo. La ecuación característica que describe el comportamiento de la puerta XNOR es: F = A BSu tabla de verdad es la siguiente Entrada A Entrada B Salida A B

0 0 1 0 1 0 1 0 0 1 1 1Se puede definir esta puerta como aquella que proporciona un 1 lógico, sólo si las dos entradas son iguales, esto es, 0 y 0 ó 1 y 1 (2 encendidos o 2 apagados).