PDF de programación - Fundamentos de computadores / ALU

Imágen de pdf Fundamentos de computadores / ALU

Fundamentos de computadores / ALUgráfica de visualizaciones

Publicado el 13 de Julio del 2019
592 visualizaciones desde el 13 de Julio del 2019
562,2 KB
21 paginas
Creado hace 12a (21/03/2012)
FUNDAMENTOS DE COMPUTADORES

ALU





FUNDAMENTOS DE COMPUTADORES

ALU

© Todos los derechos de propiedad intelectual de esta obra pertenecen en exclusiva a la Universidad
Europea de Madrid, S.L.U. Queda terminantemente prohibida la reproducción, puesta a disposición del
público y en general cualquier otra forma de explotación de toda o parte de la misma.

La utilización no autorizada de esta obra, así como los perjuicios ocasionados en los derechos de
propiedad intelectual e industrial de la Universidad Europea de Madrid, S.L.U., darán lugar al ejercicio
de las acciones que legalmente le correspondan y, en su caso, a las responsabilidades que de dicho
ejercicio se deriven.

2





Índice

Presentación

Estructura y operaciones de una ALU

Operaciones de suma y resta I

Operaciones de suma y resta II

Multiplicación de binario puro

Multiplicación de enteros con signo

La división de enteros

División de enteros con signo

Multiplicación de rápidos

Operaciones con números reales - coma flotante

Resumen

FUNDAMENTOS DE COMPUTADORES

ALU

4

5

7

8

9

11

13

15

16

18

21

3





Presentación

FUNDAMENTOS DE COMPUTADORES

ALU

La Unidad Aritmético Lógica, es uno de los componentes que

Von Neumann implementó en su primer diseño, como un

componente fundamental para el computador.

La tarea de este componente, tal como su propio nombre indica,

se encarga de realizar las operaciones aritméticas (+, -, *, etc.)

y lógicas (and, or, not, etc.) sobre datos, mayoritariamente

números.

Hay muchas maneras de almacenar números en binario. Tenemos que diferenciar entre números

positivos y negativos, enteros y reales, por lo que, para entender una Unidad Aritmético Lógica,

hay que tener muy presente estos métodos de representación de la información.

Por tanto, debemos recordar que la representación de información numérica más estándar en los

computadores actuales consiste en:

Enteros

Enteros positivos: Binario puro. De 8, 16 ó 32 bits, son los formatos más extendidos.

Enteros con signo: complemento a dos.

Reales

De simple precisión: 16 bits, de los cuales 8 para exponente y 8 para la mantisa.

Doble precisión: 32 ó 64 bits. 8 para el exponente y 24 para mantisa y 11 para exponente y

52 para mantisa respectivamente.

Para hacer un estudio de cómo se implementa una Unidad Aritmético Lógica (ALU a partir de

ahora), estudiaremos las operaciones más importantes sobre cada uno de estos sistemas, así

como las optimizaciones que podemos hacer sobre cada una de ellas.

4





FUNDAMENTOS DE COMPUTADORES

ALU

Estructura y operaciones de una ALU

La imagen que aparece en pantalla representa la

estructura de una unidad aritmética que, en general,
se compone de uno o varios operadores, de un
unos biestables para
conjunto
almacenar el estado y, en algunos casos, de un componente secuenciador.

de registros,

Los operadores por los que está construido una ALU, pueden ser de dos tipos.

Operadores de tipo
combinacional simple y/o de
tipo paralelo

La unidad de control del computador se encarga de
llevar a cabo el control de los algoritmos de las
operaciones complejas. Es típica de dispositivos de bajo
coste, donde se anteponen las condiciones económicas
a la eficiencia.

Operadores con su propio
órgano secuenciador

fases y de un conjunto de

El órgano secuenciador se encarga de dirigir las fases
necesarias para la realización de las operaciones que
tenga encomendadas. Este órgano se compondrá de un
contador de fases, de una lógica de decodificación de
las
registros para
almacenamiento temporal de cálculos intermedios. Estos
operadores suelen encontrarse en computadores muy
potentes, a los que se les dota de una unidad aritmética
compuesta por varios operadores que pueden funcionar
en paralelo, anteponiendo la eficiencia a los demás
factores.

Por su lado, el banco de registros de tipo general sirve para que el usuario almacene

temporalmente datos y resultados intermedios. Suele constar del orden de 8 ó 16. En muchas

máquinas, hay un registro en especial, llamado acumulador.

Acumulador

El acumulador recibe un trato privilegiado. Este registro se utiliza como almacén
inicial/intermedio/final de los datos del operador y, sobre su contenido, se realizan muchas
operaciones que no se pueden hacer sobre otros registros.

Finalmente, diremos que la unidad aritmética está generalmente dotada de unos biestables, que

almacenan ciertas condiciones relativas a la última operación realizada por ella. Son muchas las

condiciones que se pueden almacenar en este registro de estado, pero por su simplicidad y

utilidad, destacamos los siguientes:

5





FUNDAMENTOS DE COMPUTADORES

ALU

Cero: se pone a 1 si el resultado es cero.

Negativo: se pone a 1 si el resultado es negativo.

Acarreo: se pone a 1 si el resultado tiene acarreo.

Desbordamiento: se pone a 1 si el resultado tiene desbordamiento.

Denominación de los biestables de la unidad aritmética

Los biestables de los que, generalmente, está dotada la unidad aritmética, se llaman
biestables de estado.

6





FUNDAMENTOS DE COMPUTADORES

ALU

Operaciones de suma y resta I

La suma/resta de números enteros es una de las operaciones

simples que se realizan mediante lógica combinacional clásica. Y

suele ser, en muchas ALU, la base de otras operaciones como la

multiplicación o la división. La manera de construir un sumador, ya

le hemos visto en otras asignaturas, por lo que sólo recordaremos a grandes rasgos cómo era su

implementación.

Se basa en la combinación de sumadores elementales, es decir, sumadores de un solo bit (véase

la imagen de la derecha) más acarreo, que se encadenan, para formar sumadores del número de

bits que se desee (véase la imagen inferior).

Este método de construir un sumador es muy simple, pero el tiempo de suma, depende del

número de bits que forman los números, ya que la suma tiene que ser secuencial. En la

actualidad, hay sumadores con predicción de acarreo, que permiten hacer la suma de todos los

bits de manera simultánea, acelerando considerablemente el tiempo de la suma. Estos sumadores

se construyen gracias a una característica del acarreo, que puedes ser determinada solo,
teniendo en cuenta los bits ai,bi de cada etapa.



Explicación del sumador con predicción de acarreo

7





FUNDAMENTOS DE COMPUTADORES

ALU

Operaciones de suma y resta II

Hasta ahora hemos hablado del sumador, pero ¿qué pasa con el restador? Como ya se ha

mencionado, los números negativos en un computador actual, se implementan en complemento a
dos. Este sistema tiene muchas ventajas, y una de ellas, quizás la más importante, es que la
conversión de positivo a negativo y viceversa es muy simple (cambiar ceros por unos y unos
por ceros, y después sumar uno). A priori, parece complicado, pero si se analiza bien y se tiene

en cuenta que una operación de resta, se puede interpretar como:

X = A - B es lo mismo que X = A + (-B)

Todas las restas se convierten en sumas si podemos hacer el complemento a dos de B de

manera rápida.

Analicemos este circuito:

Es un sumador en secuencial, al que al a cada operando bi se le aplica una XOR junto con la
señal S/R. Si S/R es 0, bi no se modifica, pero si S/R es 1, bi se invierte, además, si la señal S/R
es 1, entonces el primer carry del sumador es 1, con lo que toda la suma se ve incrementado en

1.

En conclusión, si S/R es 0 el sumador se comporta como un sumador, mientras que si S/R es 0

el sumador se comporta como un restador.

8





Multiplicación de binario puro

FUNDAMENTOS DE COMPUTADORES

ALU

9





FUNDAMENTOS DE COMPUTADORES

ALU

Ejemplo de multiplicación de dos números sin signo

10





FUNDAMENTOS DE COMPUTADORES

ALU

Multiplicación de enteros con signo

Para la representación de enteros negativos/positivos se utiliza

complemento a dos. Debemos comprobar que el método de

multiplicación de números positivos, no es válido para los

negativos. No obstante, Booth ha simplificado esta tarea para

desarrollar un método que permite la multiplicación de números

positivos y negativos sin tener en cuenta el signo de los

operandos. En la imagen,observamos que Booth ha escrito un

algoritmo que tiene una traducción directa a hardware y cuyo

principio de funcionamiento consiste en:

Complemento a dos

El complemento a dos lo repasamos en la pantallas de sumador/restador.

El multiplicador y el multiplicando se ubican en los registros Q y M respectivamente.

Se crea un registro de un bit con una ubicación lógica a la derecha del bit menos
significativo (Q0,) del registro Q, y que denominamos Q-1.

A y Q-1, se fijan inicialmente a 0.

Se comprueban Q0 y Q-1:

Si los dos son iguales (1-1 ó 0-0), todos los bits de los registros A, Q, y Q-1 se desplazan
un bit a la derecha.

Si dichos bits difieren, el multiplicando se suma o se resta al registro A, según que los dos

bits sean 0-1 ó 1-0. A continuación de la suma o resta se realiza un desplazamiento a la

derecha.

Debemos tener en cuenta queel desplazamiento a derecha es un desplazamiento
aritmético,es decir, el bit más significativo de A (A n-1) se copia en An-2, pero An-1
mantiene su valor. A este efecto se le conoce como rellenar con el bit de sigo, y se utiliza
para preservar el signo del número contenido en la pareja de registros A y Q.

Se repite esta secuencia hasta que se hayan procesado todos los bits de multiplicador.

11





FUNDAMENTOS DE COMPUTADORES

ALU

Solución para multiplicar números negativos

Para solucionar este problema, podemos tomar una solución muy similar al caso del
Sumador/restador. Que consistiría en pasar los números negat
  • Links de descarga
http://lwp-l.com/pdf16281

Comentarios de: Fundamentos de computadores / ALU (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad