ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES

Tamaño: px
Comenzar la demostración a partir de la página:

Download "ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES"

Transcripción

1 Universidad Rey Juan Carlos ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES Circuitos para multiplicación y división de números en coma fija Luis Rincón Córcoles Licesio J. Rodríguez-Aragón Programa Bibliografía.. Multiplicación binaria en coma fija. 2. Multiplicación por una constante. 3. Multiplicación por suma - desplazamiento. 4. Multiplicación por grupos solapados. 5. Circuitos para multiplicación rápida. 6. División binaria en coma fija. 7. División por una constante. 8. División con restauración. 9. Instrucciones para multiplicación y división en ensamblador. 2

2 Bibliografía D.A. PATTERSON, J.L. HENNESSY. Estructura y Diseño de Computadores. Reverté, 2. DORMIDO, S. CANTO M.A., MIRA J., DELGADO A.E. Estructura y Tecnología de Computadores. 2ª edición. Sanz y Torres, 2. PARHAMI, B. Computer Arithmetic. Oxford University Press, 2. P. DE MIGUEL. Fundamentos de los Computadores. 7ª edición. Paraninfo, 999. W. STALLINGS. Organización y Arquitectura de Computadores. 5ª edición, Prentice Hall, Multiplicación binaria en coma fija La operación de multiplicación de números en coma fija no suele estar contemplada directamente por las UAL, sino que se suele realizar mediante circuitos específicos: Construir un circuito multiplicador rápido exige una circuitería compleja, y las UAL sólo realizan directamente las operaciones aritméticas y lógicas más básicas. La multiplicación se puede realizar en la UAL mediante una secuencia de sumas y desplazamientos controlados por la unidad de control (UC), si bien no resulta demasiado eficiente. La multiplicación puede realizarse también mediante un programa en ensamblador que conste de un bucle con una secuencia de sumas y desplazamientos, aunque esto es mucho menos eficiente aún. Terminología de la multiplicación: M x m = P M: multiplicando. m: multiplicador. P: producto o resultado. 4

3 Multiplicación binaria en coma fija B PRODUCTO BINARIO ( ) A M m R = 72 multiplicando multiplicador Productos parciales resultado M 3 M 2 M M m 2 m m M 3 m M 2 m M m M m M 3 m M 2 m M m M m multiplicando multiplicador Productos parciales M 3 m 2 M 2 m 2 M m 2 M m 2 R 6 R 5 R 4 R 3 R 2 R R resultado 5 Multiplicación binaria en coma fija La multiplicación en coma fija es una secuencia de desplazamientos y sumas con extensión de signo. Si los operandos están en binario puro, se rellenan con ceros a la izquierda. Los operandos en complemento a 2 se rellenan a su izquierda con el bit de signo. En cualquier caso, a la derecha se rellena con ceros. Ejemplo: multiplicar M= 2 =66 por m= 2 =25 M*m *2 = M*: M sin desplazar + M*m *2 = + M*m 2 *2 2 = + M*m 3 *2 3 = M*8: M desplazado 3 lugares + M*m 4 *2 4 = M*6: M desplazado 4 lugares + M*m 5 *2 5 = + M*m 6 *2 6 = + M*m 7 *2 7 = M*m El producto de dos números binarios de n bits produce un resultado que puede tener hasta 2n bits de ancho. 6

4 2. Multiplicación por un valor constante La multiplicación es una operación costosa en tiempo de ejecución. Por tanto, es aconsejable evitar las multiplicaciones en los programas siempre que sea posible. Si uno de los operandos (por ejemplo el multiplicador) es una constante conocida en tiempo de compilación (o ensamblaje), es frecuente que el compilador (o ensamblador) sustituya la multiplicación por otras operaciones. Cuando el multiplicador es una constante potencia de 2, la multiplicación se puede sustituir por un desplazamiento del multiplicando hacia la izquierda. Si el multiplicador es 2 k, se desplazará el multiplicando k lugares a la izquierda. N = a n- n a 2 N 2 m = a n- 2 n-+ m a 2 + m Ejemplo: = 2 7 Multiplicación por un valor constante Cuando el multiplicador es una constante que no es una potencia de 2, la multiplicación puede descomponerse en una secuencia de instrucciones de desplazamiento y de suma. Ejemplo: multiplicar M= 2 =66 por m= 2 =25 Descomponemos el multiplicador m=25=6+8+. Así, la operación será M*25 = M*(6+8+) = M*6+M*8+M que se traduce en dos desplazamientos (de 3 y 4 lugares respectivamente) y dos sumas (consumiríamos una variable intermedia). Desplazamiento de M cuatro posiciones + Desplazamiento de M tres posiciones + M sin desplazar Resultado de la suma (del producto) 8

5 3. Multiplicación por suma desplazamiento Vamos a ver: ) El algoritmo de lápiz y papel (o de suma-desplazamiento) para multiplicar números en binario puro (sin signo) de n bits. 2) Un circuito que permite realizar la operación utilizando dicho algoritmo. 3) Una versión optimizada del algoritmo, con el correspondiente circuito. 4) La versión final del algoritmo, aún más optimizada, acompañada del correspondiente circuito. Los circuitos se basan en: Un sumador, que puede ser el de la UAL. Varios registros de desplazamiento. Un circuito secuencial de control, que puede ser parte de la UC. 9 Multiplicación por S D: ª versión La multiplicación será un proceso iterativo, y en cada ciclo se realizarán las siguientes operaciones:. Se realiza el producto del multiplicando por el bit del multiplicador, con lo cual obtendremos productos parciales que pueden valer lo mismo que el multiplicando desplazado (cuando el bit del multiplicador sea ) o bien (cuando dicho bit sea nulo). 2. Se desplazará el multiplicando un lugar hacia la izquierda para alinear correctamente los productos parciales, que estarán convenientemente rellenados con ceros a la izquierda y/o a la derecha (para ello, doblaremos el tamaño del multiplicando, e inicialmente lo rellenaremos con ceros a la izquierda). 3. Se desplaza o se rota el multiplicador un lugar hacia la derecha (por esto siempre se multiplica por el bit del multiplicador). 4. Se sumará el producto parcial con la suma acumulada de los productos parciales obtenidos en los pasos anteriores (al principio el producto acumulado será ).

6 Multiplicación por S D: ª versión Circuitería necesaria: Un registro de 2n bits capaz de realizar desplazamientos unitarios hacia la izquierda para el multiplicando. Un registro de n bits capaz de realizar desplazamientos unitarios hacia la derecha para el multiplicador. Un registro de 2n bits para el producto. Un contador de a n para contar el número de iteraciones. Un sumador de 2n bits. Un controlador para generar la secuencia de señales necesaria. Multiplicand Shift left Circuito para n = con las conexiones y señales de control necesarias. 64-bit ALU Multiplier Product Control test No Multiplicación por S D: ª versión Producto Producto + Multiplicando Inicio Bit del Multiplicador =? Desplazamiento del registro Multiplicando a la izquierda Operaciones de la fase de inicio:. Iniciar el registro Multiplicando (mitad superior con todos los bits a, mitad inferior con el multiplicando) 2. Iniciar el registro Multiplicador 3. Producto 4. Contador Desplazamiento del registro Multiplicador a la derecha Multiplicand Shift left Contador Contador+ 64-bit ALU Multiplier Contador = n? Sí Product Control test Fin Ejercicio: dibujar el diagrama de estados del controlador del circuito. 2

7 Multiplicación por S D: ª versión Ejemplo: n=4, multiplicar M= 2 = por m= 2 =3 Iteración Paso Multiplicador Multiplicando Producto Valores iniciales Producto Producto + Multiplicando Desplazar Multiplicando a la izqda. Desplazar Multiplicador a la derecha 2 Producto Producto + Multiplicando Desplazar Multiplicando a la izqda. Desplazar Multiplicador a la derecha 3 Ninguna operación Desplazar Multiplicando a la izqda. Desplazar Multiplicador a la derecha 4 Ninguna operación Desplazar Multiplicando a la izqda. Desplazar Multiplicador a la derecha 3 Multiplicación por S D: 2ª versión En el circuito anterior sucede que: La mitad de los bits del registro Multiplicando siempre son, con lo cual sólo la mitad contiene datos útiles. También sobra la mitad de la UAL, pues está sumando en cada paso el doble de datos de lo estrictamente necesario. Por tanto, se ideó un algoritmo similar al anterior, pero sin duplicar el tamaño del multiplicador, y utilizando un sumador de n bits. Puesto que las sumas son de n bits, el registro Producto estará dividido en dos mitades (Producto izq : mitad izquierda; Producto der : mitad derecha; P: registro completo). En cada iteración se suma sólo sobre la mitad izquierda. Los desplazamientos se realizan sobre el registro completo. Deja de ser necesario desplazar el registro Multiplicando. Sigue siendo preciso desplazar el registro Multiplicador para consultar siempre su bit. 4

8 Multiplicación por S D: 2ª versión Circuitería necesaria: Un registro de n bits para el multiplicando. Un registro de n bits capaz de realizar desplazamientos lógicos unitarios hacia la derecha para el multiplicador. Un sumador de n bits. Un biestable para guardar el acarreo de las sumas (no aparece en el dibujo). Un registro de 2n bits para el producto, que pueda cargarse en paralelo en su mitad izquierda dejando intacta la mitad derecha; este registro admitirá desplazamientos lógicos unitarios hacia la derecha del registro completo concatenando el biestable de acarreo por la izquierda. Un contador de a n para contar el número de iteraciones. Un controlador para generar la secuencia de señales necesaria. Circuito para n = con las conexiones y señales de control necesarias. 32-bit ALU Multiplicand Multiplier Product Control test 5 Multiplicación por S D: 2ª versión Inicio Operaciones de la fase de inicio:. Iniciar el registro Multiplicando Producto izq Producto izq + Multiplicando Bit del Multiplicador =? 2. Iniciar el registro Multiplicador 3. Producto No Desplazamiento del registro Producto a la derecha 4. Contador Desplazamiento del registro Multiplicador a la derecha Contador Contador+ Multiplicand Contador = n? 32-bit ALU Multiplier Sí Product Control test Fin Ejercicio: dibujar el diagrama de estados del controlador del circuito. 6

9 Multiplicación por S D: 2ª versión Ejemplo: n=4, multiplicar M= 2 = por m= 2 =3 Iteración Paso Multiplicador Multiplicando Producto Valores iniciales Producto izq Producto izq + Multiplicando Desplazar Producto a la derecha Desplazar Multiplicador a la derecha 2 Producto izq Producto izq + Multiplicando Desplazar Producto a la derecha Desplazar Multiplicador a la derecha 3 Ninguna operación Desplazar Producto a la derecha Desplazar Multiplicador a la derecha 4 Ninguna operación Desplazar Producto a la derecha Desplazar Multiplicador a la derecha 7 Multiplicación por S D: 3ª versión En el circuito anterior sucede que: Al principio, el registro Producto tiene la mitad de sus bits desperdiciados. A medida que van realizándose pasos del algoritmo, el espacio desaprovechado del registro Producto se va reduciendo. Los bits del multiplicador van dejando de ser útiles a medida que se van realizando los productos parciales (en realidad se van perdiendo si hacemos desplazamientos sobre el registro Multiplicador y no rotaciones). El espacio desaprovechado del registro Producto es exactamente igual que el número de bits del multiplicador que necesitamos mantener en cada instante. Por tanto, se incorporó una mejora al circuito, de forma que el registro Multiplicador desaparece, y el multiplicador se carga inicialmente en la mitad derecha del registro Producto. En cada iteración, cuando vayamos a consultar un bit del multiplicador, consultaremos el bit menos significativo del registro Producto. 8

10 Multiplicación por S D: 3ª versión Circuitería necesaria: Un registro de n bits para el multiplicando. Un sumador de n bits. Un biestable para guardar el acarreo de las sumas (no aparece en el dibujo). Un registro de 2n bits para el producto, que pueda cargarse en paralelo en su mitad izquierda dejando intacta la mitad derecha, o cargarse en paralelo en su mitad derecha dejando intacta su mitad izquierda; este registro admitirá desplazamientos lógicos unitarios hacia la derecha del registro completo concatenando el biestable de acarreo por la izquierda. Un contador de a n para contar el número de iteraciones. Un controlador para generar la secuencia de señales necesaria. Multiplicand Circuito para n = con las conexiones y señales de control necesarias. 32-bit ALU Product Control test 9 Multiplicación por S D: 3ª versión Producto izq Producto izq + Multiplicando Inicio Bit del Producto =? Operaciones de la fase de inicio:. Iniciar el registro Multiplicando 2. Iniciar el registro Producto (mitad izquierda a, mitad derecha con el multiplicador) 3. Contador No Desplazamiento del registro Producto a la derecha Contador Contador+ Multiplicand Contador = n? 32-bit ALU Sí Product Control test Fin Ejercicio: dibujar el diagrama de estados del controlador del circuito. 2

11 Multiplicación por S D: 3ª versión Ejemplo: n=4, multiplicar M= 2 = por m= 2 =3 Iteración Paso Multiplicando Producto Valores iniciales Producto izq Producto izq + Multiplicando Desplazar Producto a la derecha 2 Producto izq Producto izq + Multiplicando Desplazar Producto a la derecha 3 Ninguna operación Desplazar Producto a la derecha 4 Ninguna operación Desplazar Producto a la derecha Los números utilizados están en binario puro. El algoritmo se puede adaptar a números en complemento a 2. Con multiplicador negativo en la última iteración hay que restar en vez de sumar. 2 Multiplicación por S D: ruta de datos 3ª versión CONTROLADOR Ini Fin Clr CE Contador -3 TC INICIO Cuenta Desplaza Carga BitZ A3 A2 A A L Multiplicando Sumador de 4 bits B3 B2 B B Reloj Clr D CE c Clr Producto L S Multiplicador L S Z7 Z6 Z5 Z4 Z3 Z2 Z Z 22

12 4. Multiplicación por grupos solapados El algoritmo de lápiz y papel (o suma desplazamiento) considera los bits del multiplicador uno a uno, y va generando productos parciales que va sumando y acumulando. Los algoritmos de multiplicación por grupos solapados (G-S) generan productos parciales considerando los bits del multiplicador por grupos. Los algoritmos de multiplicación por G-S analizan una ventana o grupo de n bits del multiplicador en cada iteración. En función de los bits de la ventana, se generan uno o varios productos parciales. De cara a la siguiente iteración, la ventana de bits analizados se desplaza un lugar hacia la derecha (las ventanas o grupos de bits del multiplicador se solapan en las sucesivas interaciones). El caso de G-S más sencillo es el algoritmo de Booth, que considera grupos solapados de 2 bits en el multiplicador para generar los productos parciales. 23 Algoritmo de Booth k k- j j El algoritmo de Booth presentado funciona para operandos en complemento a 2 (para binario puro habría que realizar una pequeña adaptación). En un número binario, una cadena de bits a equivale a una diferencia de dos potencias de 2 (es una suma de elementos de una progresión geométrica de razón 2).... = 2 k+ -2 j El algoritmo analiza los bits del multiplicador 2 a 2 de derecha a izquierda: Si detecta que está al final de una cadena de bits a resta la mitad izquierda del registro producto menos el multiplicando Si detecta que está al principio de una cadena de bits a suma la mitad izquierda del registro producto más el multiplicando. Multiplicador i Multiplicador i- Operación Nada (en medio de cadena de ceros) Sumar (inicio de cadena de unos) Restar (final de cadena de unos) Nada (en medio de cadena de unos) 24

13 Algoritmo de Booth En definitiva, el algoritmo de Booth se basa en recodificar el multiplicador y convertirlo en una secuencia de dígitos con valores, y (codificación de dígitos con signo). cuando comienza cadena de bits a (implica hacer una suma). - cuando termina cadena de bits a (implica hacer una resta). en otro caso. Ejemplo: recodificación del número C2 Número original Número recodificado - - Ejemplo: recodificación del número C2 Número original Número recodificado - - Los números en binario puro se recodifican añadiendo un bit a a la izquierda del todo (ejercicio: probarlo). 25 Algoritmo de Booth Ejemplo: multiplicar M= C2 =-9 por m= C2 =25 Recodificamos el multiplicador y realizamos la operación: Multiplicador original Multiplicador recodificado - - M*m *(-2 ) = -*M + M*m *2 = 2*M + M*m 2 *2 2 = + M*m 3 *(-2 3 ) = -8*M + M*m 4 *2 4 = + M*m 5 *2 5 = 32*M + M*m 6 *2 6 = + M*m 7 *2 7 = M*m 26

14 Algoritmo de Booth Podría emplearse la circuitería del algoritmo de suma-desplazamiento con algunas pequeñas modificaciones (se parte de la versión 3): Utilizar un sumador-restador. Despreciar el bit de acarreo superior, ya que se manejan datos en complemento a 2. Realizar desplazamientos aritméticos (extendiendo el signo). Añadir un bit que se concatenará a la derecha del registro Producto, iniciado con un y que se modificará cada vez que se haga un desplazamiento sobre Producto (la ventana de bits analizada en cada iteración está formada por el bit menos significativo del registro Producto y el bit añadido a su derecha). Multiplicand 32-bit ALU Product Control test 27 Algoritmo de Booth Inicio Multiplicand 32-bit ALU p p -? Product Control test Producto izq Producto izq - Multiplicando Producto izq Producto izq + Multiplicando No Desplazar Producto # p - a la derecha Contador Contador+ Contador =? Sí Operaciones de la fase de inicio:. Iniciar el registro Multiplicando 2. Iniciar el registro Producto (mitad izquierda a, mitad derecha con el multiplicador, bit p - a ) 3. Contador Fin Aclaraciones: p : bit menos significativo del registro Producto. p - : bit añadido a la derecha del registro Producto. Producto # p - : registro Producto concatenado con el bit p -. Ejercicio: dibujar el diagrama de estados del controlador del circuito. 28

15 Algoritmo de Booth Ejemplo: n=4, multiplicar M= C2 = -6 por m= C2 =3 El multiplicando cambiado de signo es M= C2 Iteración Paso Multiplicando Producto Valores iniciales Producto izq Producto izq - Multiplicando Desplazar Producto a la derecha 2 Ninguna operación Desplazar Producto a la derecha 3 Producto izq Producto izq + Multiplicando Desplazar Producto a la derecha 4 Ninguna operación Desplazar Producto a la derecha Los números utilizados están en complemento a 2. El algoritmo se puede adaptar a números en binario puro. Si el multiplicador comienza por, realizar un ajuste final sumando el multiplicador a la mitad izquierda del registro Producto Circuitos para multiplicación rápida En vez de ejecutar la multiplicación a través de un proceso iterativo de sumas y desplazamientos regulado por un controlador secuencial, el producto se puede realizar a partir de un sumador de múltiples sumandos (los productos parciales) convenientemente organizados. Para construir multiplicadores de altas velocidades caben dos posibilidades: Sumar los productos parciales rápidamente. Reducir el número de productos parciales que hay que sumar. Para sumar los productos parciales más rápido se puede recurrir por ejemplo a: Las matrices de sumadores. Los sumadores en árbol. Para reducir el número de productos parciales se puede recurrir por ejemplo a: Multiplicadores en base mayor que 2 (normalmente en base 4). Recodificación de Booth utilizando grupos solapados de 3 ó más bits. Otra técnica: guardar todos los posibles resultados en una ROM. La ROM tendría 2 2n posiciones de 2n bits cada una! 3

16 Matriz de sumadores con acarreo propagado Multiplicar consiste en sumar varios productos parciales desplazados. Primer enfoque para multiplicar rápidamente: ) Calcular los productos parciales mediante puertas AND 2) Sumar dichos productos parciales mediante sumadores tradicionales. Pega: retardo total grande. Para mejorar las prestaciones del circuito, pueden utilizarse otros enfoques: Matriz de CSA. Árbol de Wallace. Árbol de Dadda. También es posible multiplicar números con signo: Multiplicador de Pezaris. Multiplicador de Baugh-Wooley División binaria en coma fija La operación de división de números en coma fija no suele estar contemplada directamente por las UAL, sino que se suele realizar mediante circuitos específicos: Construir un circuito divisor rápido es aún más complicado que en el caso del multiplicador. La división se puede realizar en la UAL mediante una secuencia de sumas, restas, comparaciones y desplazamientos controlados por la unidad de control (UC), si bien no resulta demasiado eficiente. La división puede realizarse también mediante un programa en ensamblador que conste de un bucle con una secuencia de sumas, restas, comparaciones y desplazamientos, aunque esto es mucho menos eficiente aún. Antes de dividir, los circuitos deben comprobar obligatoriamente si el divisor es igual o distinto de para evitar desbordamientos. Terminología de la división: D / d = C d x C + R = D D: dividendo. d: divisor. C: cociente. R: resto. 32

17 División binaria en coma fija Es fácil elegir cada dígito del cociente, ya que sólo puede valer ó. Si el dividendo parcial es mayor o igual que el divisor, el siguiente dígito del cociente es, si no es dividendo resto divisor cociente División por un valor constante La división es una operación costosa en tiempo de ejecución. Por tanto, es aconsejable evitar las multiplicaciones en los programas siempre que sea posible. Si el divisor es una constante conocida en tiempo de compilación (o ensamblaje), el compilador (o ensamblador) puede sustituir la división por otras operaciones. Cuando el divisor es una constante potencia de 2, el cociente de la división se puede obtener mediante por un desplazamiento del dividendo hacia la derecha ( esto es cierto sólo para números en binario puro!). Si el divisor es 2 k, el cociente se obtiene desplazando el dividendo k lugares a la derecha. Los bits sobrantes (parte fraccionaria del resultado) constituirían el resto de la división entera, convenientemente escalado por 2 k. n- N = an a 2 N n- m m = an a 2 m 2 Ejemplo: 2 /2 3 cociente = 2, resto = 2 Si el divisor es una constante que no es potencia de 2, el cálculo es complicado. 34

18 8. División con restauración En primer lugar se presentará un algoritmo básico para dividir números en binario puro (sin signo) de n bits. A continuación se presentará un circuito que permite realizar la operación utilizando dicho algoritmo. Seguidamente se presentará una versión optimizada del algoritmo, con el correspondiente circuito. Se incluirá una tercera versión del algoritmo aún más optimizada acompañada del correspondiente circuito. Finalmente se indicarán las modificaciones que será preciso introducir en los circuitos para poder dividir números con signo. Los circuitos que vamos a ver a continuación se basan en: Un sumador/restador, que puede ser el de la UAL. Varios registros de desplazamiento. Un circuito secuencial de control, que puede ser parte de la UC. 35 División con restauración: ª versión La división se realizará más o menos igual que como se hace con lápiz y papel. Será un proceso iterativo de n+ ciclos, en cada uno de los cuales se realizarán las siguientes operaciones:. Se resta el dividendo parcial menos el divisor. Si la resta es positiva seguimos por el paso 2, y si es negativa vamos al paso Resta positiva: el dividendo parcial cabe en el divisor. Por tanto, se añade un al cociente, y se desplaza el mismo un lugar a la derecha. Ir a Resta negativa: el dividendo parcial no cabe en el divisor. Por tanto, se añade un al cociente y se desplaza el mismo un lugar a la derecha. Se restaura el dividendo parcial sumándole el divisor. Ir a Se desplaza el divisor un lugar a la derecha. 36

19 División con restauración: ª versión Circuitería necesaria: Un registro de 2n bits que inicialmente contendrá el dividendo. Un registro de 2n bits capaz de realizar desplazamientos unitarios hacia la derecha para el divisor. Un registro de n bits capaz de realizar desplazamientos unitarios hacia la izquierda para el cociente. Un contador de a n+ para contar el número de iteraciones. Un sumador / restador de 2n bits. Un controlador para generar la secuencia de señales necesaria. Divisor Circuito para n = con las conexiones y señales de control necesarias. 64-bit ALU Quotient Shift left Remainder Control test 37 No División con restauración: ª versión No Desplazar Cociente bit hacia la izquierda Cociente Inicio Resto Resto-Divisor Resto <? Desplazar Divisor bit hacia la derecha Contador Contador+ Sí Resto Resto+Divisor Desplazar Cociente bit hacia la izquierda Cociente Operaciones de la fase de inicio:. Iniciar el registro Resto (mitad superior con todos los bits a, mitad inferior con el dividendo). 2. Iniciar el registro Divisor (mitad superior con el divisor, mitad inferior con todos los bits a ). 3. Cociente 4. Contador Divisor Contador=n+? Sí 64-bit ALU Quotient Shift left Fin Remainder Control test Ejercicio propuesto: dibujar el diagrama de estados del controlador del circuito. 38

20 Ejemplo: n=4, dividir D= 2 = por d= 2 =3 División con restauración: ª versión Iteración Paso Cociente Divisor Resto Valores iniciales Resto Resto - Divisor Resto< +Divisor, sll Cociente, Cociente = Desplazar Divisor a la derecha 2 Resto Resto - Divisor Resto< +Divisor, sll Cociente, Cociente = Desplazar Divisor a la derecha 3 Resto Resto - Divisor Resto< +Divisor, sll Cociente, Cociente = Desplazar Divisor a la derecha 4 Resto Resto - Divisor Resto sll Cociente, Cociente = Desplazar Divisor a la derecha 5 Resto Resto - Divisor Resto sll Cociente, Cociente = Desplazar Divisor a la derecha 39 División con restauración: 2ª versión En el circuito anterior sucede que: La mitad de los bits del divisor no contienen información útil. Como consecuencia de lo anterior, también sobra la mitad de la UAL, pues está sumando y/o restando en cada paso el doble de datos de lo estrictamente necesario. Por tanto, se ideó un algoritmo similar al anterior, pero sin duplicar el tamaño del divisor, y utilizando un sumador / restador de n bits. Puesto que las sumas y restas son de n bits, el registro Resto estará dividido en dos mitades (Resto izq : mitad izquierda; Resto der : mitad derecha; Resto: registro completo). En cada iteración se suma y/o resta sólo sobre la mitad izquierda. Los desplazamientos se realizan sobre el registro completo. Deja de ser necesario desplazar el registro Divisor. Sigue siendo preciso desplazar el registro Cociente para escribir en su bit el nuevo dígito calculado en cada paso. El resto queda en la mitad izquierda del registro Resto. Nunca puede haber un en el primer dígito del cociente: por consiguiente, pueden reordenarse el desplazamiento y la resta de forma que se elimine una iteración del algoritmo. 4

21 División con restauración: 2ª versión Circuitería necesaria: Un registro de n bits para el divisor. Un registro de n bits capaz de realizar desplazamientos lógicos unitarios hacia la izquierda para el cociente. Un sumador / restador de n bits. Un registro de 2n bits para el resto, que pueda cargarse en paralelo en una mitad dejando intacta la otra mitad; este registro admitirá desplazamientos lógicos unitarios del registro completo hacia la izquierda. Un contador de a n para contar el número de iteraciones. Un controlador para generar la secuencia de señales necesaria. Divisor Circuito para n = con las conexiones y señales de control necesarias. 32-bit ALU Quotient Shift left Remainder Shift left Control test 4 No División con restauración: 2ª versión No Desplazar Resto bit hacia la izquierda Desplazar Cociente bit hacia la izquierda Cociente Inicio Desplazar Resto bit hacia la izquierda Resto izq Resto izq -Divisor Resto <? Sí Resto izq Resto izq +Divisor Desplazar Resto bit hacia la izquierda Desplazar Cociente bit hacia la izquierda Cociente Operaciones de la fase de inicio:. Iniciar el registro Divisor 2. Iniciar el registro Resto (mitad inferior con el dividendo, mitad superior con todos sus bits a ) 3. Cociente 4. Contador Divisor Contador Contador+ 32-bit ALU Quotient Shift left Contador=n? Sí Desplazar Resto izq bit hacia la derecha Remainder Shift left Control test Fin Ejercicio propuesto: dibujar el diagrama de estados del controlador del circuito. 42

22 División con restauración: 2ª versión Ejemplo: n=4, dividir D= 2 = por d= 2 =3 Iteración Paso Cociente Divisor Resto Valores iniciales Desplazar Resto a la izquierda Resto izq Resto izq Divisor Resto< +Divisor, sll Resto, sll Cociente, Cociente = 2 Resto izq Resto izq Divisor Resto< +Divisor, sll Resto, sll Cociente, Cociente = 3 Resto izq Resto izq Divisor Resto sll Resto, sll Cociente, Cociente = 4 Resto izq Resto izq Divisor Resto sll Resto, sll Cociente, Cociente = Ajuste final Desplazar Resto izq a la derecha 43 División con restauración: 3ª versión En el circuito anterior sucede que: Al principio, el registro Resto está completamente ocupado. A medida que van realizándose pasos del algoritmo, parte del contenido del registro Resto comienza a estar desaprovechado. Según realizamos pasos, obtenemos los bits del cociente uno a uno. El espacio desaprovechado del registro Resto es exactamente igual que el número de bits del cociente que tenemos calculados en cada instante. Por tanto, se incorporó una mejora al circuito, de forma que el registro Cociente desaparece. El dividendo se carga inicialmente en la mitad derecha del registro Resto. En cada iteración, cuando obtengamos un bit del cociente, lo almacenaremos en el bit menos significativo del registro Resto. Al final el cociente queda en la mitad menos significativa del registro Resto, mientras que el resto queda en la mitad más significativa de dicho registro. 44

23 División con restauración: 3ª versión Circuitería necesaria: Un registro de n bits para el divisor. Un sumador / restador de n bits. Un registro de 2n bits para el resto y el cociente, que pueda cargarse en paralelo en su mitad izquierda dejando intacta la mitad derecha, o cargarse en paralelo en su mitad derecha dejando intacta su mitad izquierda; este registro admitirá desplazamientos lógicos unitarios hacia la izquierda del registro completo. Un contador de a n para contar el número de iteraciones. Un controlador para generar la secuencia de señales necesaria. Divisor Circuito para n = con las conexiones y señales de control necesarias. 32-bit ALU Remainder Shift left Control test 45 División con restauración: 3ª versión No Inicio Desplazar Resto bit hacia la izquierda Resto izq Resto izq -Divisor Resto <? Sí Operaciones de la fase de inicio:. Iniciar el registro Divisor 2. Iniciar el registro Resto (mitad izquierda a, mitad derecha con el dividendo) 3. Contador No Desplazar Resto bit hacia la izquierda Resto Resto izq Resto izq +Divisor Desplazar Resto bit hacia la izquierda Resto Divisor Contador Contador+ 32-bit ALU Contador=n? Sí Desplazar Resto izq bit hacia la derecha Fin Remainder Shift left Ejercicio propuesto: dibujar el diagrama de estados del controlador del circuito. Control test 46

24 División con restauración: 3ª versión Ejemplo: n=4, dividir D= 2 = por d= 2 =3 Iteración Paso Divisor Resto Valores iniciales Desplazar Resto a la izquierda Resto izq Resto izq Divisor Resto< Resto izq Resto izq + Divisor Desplazar Resto a la izquierda Resto = 2 Resto izq Resto izq Divisor Resto< Resto izq Resto izq + Divisor Desplazar Resto a la izquierda Resto = 3 Resto izq Resto izq Divisor Resto Desplazar Resto a la izquierda Resto = 4 Resto izq Resto izq Divisor Resto Desplazar Resto a la izquierda Resto = Ajuste final Desplazar Resto izq a la derecha 47 División con restauración Los algoritmos y circuitos mostrados dividen números dados en binario puro. Puede hacerse división con restauración para números en complemento a 2, aunque el algoritmo es complicado. División de números en complemento a 2: se puede hacer pasando los operandos a positivos antes de hacer la división, y ajustando los signos del cociente y/o el resto si es preciso: Si el signo del dividendo y el del divisor coinciden, el cociente es positivo, y en caso contrario es negativo. El signo del resto es el mismo que el del dividendo. 48

25 9. Multiplicación y división en ensamblador MIPS La multiplicación y la división emplean dos registros especiales para guardar los resultados: Hi y Lo. En la multiplicación, la parte más significativa del resultado queda en Hi y la menos significativa en Lo. En la división, el cociente queda en Lo y el resto en Hi. Instrucciones de multiplicación: Con signo: mult. Sin signo: multu. Instrucciones de división: Con signo: div. Sin signo: divu. MC68: Multiplicación (muls, mulu): operandos de 6 bits, resultado de. División (divs, divu): dividendo de, divisor de 6 bits, cociente de 6 bits, resto de 6 bits. 49

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

LECCIÓN 8: CIRCUITOS Y ALGORITMOS DE MULTIPLICACIÓN DE ENTEROS ESTRUCTURA DE COMPUTADORES Pag. 8.1 LECCIÓN 8: CIRCUITOS Y ALGORITMOS DE MULTIPLICACIÓN DE ENTEROS 1. Circuitos de multiplicación La operación de multiplicar es mas compleja que la suma y por tanto se

Más detalles

1 1 0 1 x 1 0 1 1 1 1 0 1 + 1 1 0 1 0 0 0 0 1 1 0 1 1 0 0 0 1 1 1 1

1 1 0 1 x 1 0 1 1 1 1 0 1 + 1 1 0 1 0 0 0 0 1 1 0 1 1 0 0 0 1 1 1 1 5.1.3 Multiplicación de números enteros. El algoritmo de la multiplicación tal y como se realizaría manualmente con operandos positivos de cuatro bits es el siguiente: 1 1 0 1 x 1 0 1 1 1 1 0 1 + 1 1 0

Más detalles

Estructura y Tecnología de Computadores (ITIG) Luis Rincón Córcoles José Ignacio Martínez Torre Ángel Serrano Sánchez de León.

Estructura y Tecnología de Computadores (ITIG) Luis Rincón Córcoles José Ignacio Martínez Torre Ángel Serrano Sánchez de León. Estructura y Tecnología de Computadores (ITIG) Luis Rincón Córcoles José Ignacio Martínez Torre Ángel Serrano Sánchez de León Programa 1. Introducción. 2. Operaciones lógicas. 3. Bases de la aritmética

Más detalles

Tema IV. Unidad aritmético lógica

Tema IV. Unidad aritmético lógica Tema IV Unidad aritmético lógica 4.1 Sumadores binarios 4.1.1 Semisumador binario (SSB) 4.1.2 Sumador binario completo (SBC) 4.1.3 Sumador binario serie 4.1.4 Sumador binario paralelo con propagación del

Más detalles

Aritmética del computador. Departamento de Arquitectura de Computadores

Aritmética del computador. Departamento de Arquitectura de Computadores Aritmética del computador Departamento de Arquitectura de Computadores Contenido La unidad aritmético lógica (ALU) Representación posicional. Sistemas numéricos Representación de números enteros Aritmética

Más detalles

UNIDAD 2 Configuración y operación de un sistema de cómputo Representación de datos Conceptos El concepto de bit (abreviatura de binary digit) es fundamental para el almacenamiento de datos Puede representarse

Más detalles

Los sistemas de numeración se clasifican en: posicionales y no posicionales.

Los sistemas de numeración se clasifican en: posicionales y no posicionales. SISTEMAS NUMERICOS Un sistema numérico es un conjunto de números que se relacionan para expresar la relación existente entre la cantidad y la unidad. Debido a que un número es un símbolo, podemos encontrar

Más detalles

Sistemas de Numeración Operaciones - Códigos

Sistemas de Numeración Operaciones - Códigos Sistemas de Numeración Operaciones - Códigos Tema 2 1. Sistema decimal 2. Sistema binario 3. Sistema hexadecimal 4. Sistema octal 5. Conversión decimal binario 6. Aritmética binaria 7. Complemento a la

Más detalles

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

Aritmética Binaria. Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid Aritmética Binaria Luis Entrena, Celia López, Mario García, Enrique San Millán Universidad Carlos III de Madrid 1 Índice Representación de números con signo Sistemas de Signo y Magnitud, Complemento a

Más detalles

❷ Aritmética Binaria Entera

❷ Aritmética Binaria Entera ❷ Una de las principales aplicaciones de la electrónica digital es el diseño de dispositivos capaces de efectuar cálculos aritméticos, ya sea como principal objetivo (calculadoras, computadoras, máquinas

Más detalles

Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 Aritmética binaria

Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 Aritmética binaria Oliverio J. Santana Jaria 3. Aritmética tica binaria Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 Para Los La en conocer muchos aritmética comprender otros binaria tipos

Más detalles

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

Tema I. Sistemas Numéricos y Códigos Binarios Tema I. Sistemas Numéricos y Códigos Binarios Números binarios. Aritmética binaria. Números en complemento-2. Códigos binarios (BCD, alfanuméricos, etc) Números binarios El bit. Representación de datos

Más detalles

18. Camino de datos y unidad de control

18. Camino de datos y unidad de control Oliverio J. Santana Jaria Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 18. Camino de datos y unidad de control Un La versatilidad una característica deseable los Los

Más detalles

Sistemas de numeración

Sistemas de numeración Sistemas de numeración Un sistema de numeración es un conjunto de símbolos y reglas que permiten representar datos numéricos. Los sistemas de numeración actuales son sistemas posicionales, que se caracterizan

Más detalles

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

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Unidad I Sistemas numéricos 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS.

Más detalles

Estructura y Tecnología de Computadores (ITIG) Luis Rincón Córcoles Ángel Serrano Sánchez de León

Estructura y Tecnología de Computadores (ITIG) Luis Rincón Córcoles Ángel Serrano Sánchez de León Estructura y Tecnología de Computadores (ITIG) Luis Rincón Córcoles Ángel Serrano Sánchez de León Programa. Introducción. 2. Elementos de almacenamiento. 3. Elementos de proceso. 4. Elementos de interconexión.

Más detalles

ANEXO 2: REPRESENTACION DE LA INFORMACION EN LOS COMPUTADORES

ANEXO 2: REPRESENTACION DE LA INFORMACION EN LOS COMPUTADORES ANEXO 2: REPRESENTACION DE LA INFORMACION EN LOS COMPUTADORES SISTEMA DE NUMERACIÓN BASE 2 El sistema de numeración binario es el conjunto de elementos {0, 1} con las operaciones aritméticas (suma, resta,

Más detalles

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

Tema 2. La Información y su representación Tema 2. La Información y su representación 2.1 Introducción. Un ordenador es una máquina que procesa información. La ejecución de un programa implica la realización de unos tratamientos, según especifica

Más detalles

SISTEMAS DE NUMERACIÓN. Sistema decimal

SISTEMAS DE NUMERACIÓN. Sistema decimal SISTEMAS DE NUMERACIÓN Sistema decimal Desde antiguo el Hombre ha ideado sistemas para numerar objetos, algunos sistemas primitivos han llegado hasta nuestros días, tal es el caso de los "números romanos",

Más detalles

TEMA 2: Representación de la Información en las computadoras

TEMA 2: Representación de la Información en las computadoras TEMA 2: Representación de la Información en las computadoras Introducción Una computadora es una máquina que procesa información y ejecuta programas. Para que la computadora ejecute un programa, es necesario

Más detalles

FORMATO BINARIO DE NÚMEROS NEGATIVOS

FORMATO BINARIO DE NÚMEROS NEGATIVOS FORMATO BINARIO DE NÚMEROS NEGATIVOS Introducción: Como sabemos, con un número n determinado de bits se pueden manejar 2 n números binarios distintos. Hasta ahora hemos trabajado con números binarios puros,

Más detalles

UNIDAD 3: ARITMÉTICA DEL COMPUTADOR

UNIDAD 3: ARITMÉTICA DEL COMPUTADOR UNIDAD 3: ARITMÉTICA DEL COMPUTADOR Señor estudiante, es un gusto iniciar nuevamente con usted el desarrollo de esta tercera unidad. En esta ocasión, haremos una explicación más detallada de la representación

Más detalles

TEMA 11. CIRCUITOS ARITMÉTICOS TICOS DIGITALES

TEMA 11. CIRCUITOS ARITMÉTICOS TICOS DIGITALES TEM. CIRCUITOS RITMÉTICOS TICOS DIGITLES http://www.tech-faq.com/wp-content/uploads/images/integrated-circuit-layout.jpg IEEE 25 niversary: http://www.flickr.com/photos/ieee25/with/2809342254/ TEM. CIRCUITOS

Más detalles

Anterior Sistemas binarios: Aritmética binaria Siguiente ARITMÉTICA BINARIA. Operaciones elementales con números binarios

Anterior Sistemas binarios: Aritmética binaria Siguiente ARITMÉTICA BINARIA. Operaciones elementales con números binarios 1 de 10 27/09/11 09:57 Anterior Sistemas binarios: Aritmética binaria Siguiente ARITMÉTICA BINARIA Operaciones elementales con números binarios Suma de números binarios Resta de números binarios Complemento

Más detalles

Operaciones Aritméticas en Números con Signo

Operaciones Aritméticas en Números con Signo Operaciones Aritméticas en Números con Signo M. en C. Erika Vilches Parte 3 Multiplicación sin Signo Reglas básicas para multiplicar bits: 0x0 = 0 0x1 = 0 1x0 = 0 1x1 = 1 Ejemplos en números sin signo:

Más detalles

SITEMA BINARIO, OCTAL Y HEXADECIMAL: OPERACIONES

SITEMA BINARIO, OCTAL Y HEXADECIMAL: OPERACIONES Unidad Aritmética Lógica La Unidad Aritmético Lógica, en la CPU del procesador, es capaz de realizar operaciones aritméticas, con datos numéricos expresados en el sistema binario. Naturalmente, esas operaciones

Más detalles

SISTEMAS DE NUMERACIÓN. Sistema de numeración decimal: 5 10 2 2 10 1 8 10 0 =528 8 10 3 2 10 2 4 10 1 5 10 0 9 10 1 7 10 2 =8245,97

SISTEMAS DE NUMERACIÓN. Sistema de numeración decimal: 5 10 2 2 10 1 8 10 0 =528 8 10 3 2 10 2 4 10 1 5 10 0 9 10 1 7 10 2 =8245,97 SISTEMAS DE NUMERACIÓN Un sistema de numeración es un conjunto de símbolos y reglas que permiten representar datos numéricos. La norma principal en un sistema de numeración posicional es que un mismo símbolo

Más detalles

Computación I Representación Interna Curso 2011

Computación I Representación Interna Curso 2011 Computación I Representación Interna Curso 2011 Facultad de Ingeniería Universidad de la República Temario Representación de Números Enteros Representación de Punto Fijo Enteros sin signo Binarios puros

Más detalles

UNIDAD Nº 1: 1. SISTEMAS DE NUMERACION. Formalizado este concepto, se dirá que un número X viene representado por una cadena de dígitos:

UNIDAD Nº 1: 1. SISTEMAS DE NUMERACION. Formalizado este concepto, se dirá que un número X viene representado por una cadena de dígitos: UNIDAD Nº 1: TECNICATURA EN INFORMATICA UNLAR - CHEPES 1.1. INTRODUCCION 1. SISTEMAS DE NUMERACION El mundo del computador es un mundo binario. Por el contrario, el mundo de la información, manejada por

Más detalles

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

21/02/2012. Agenda. Unidad Central de Procesamiento (CPU) Agenda 0 Tipos de datos 0 Sistemas numéricos 0 Conversión de bases 0 Números racionales o Decimales 0 Representación en signo-magnitud 0 Representación en complemento Unidad Central de Procesamiento (CPU)

Más detalles

T6. CIRCUITOS ARITMÉTICOS

T6. CIRCUITOS ARITMÉTICOS T6. CIRCUITOS ARITMÉTICOS Circuitos Aritméticos Son dispositivos MSI que pueden realizar operaciones aritméticas (suma, resta, multiplicación y división) con números binarios. De todos los dispositivos,

Más detalles

Aritmética finita y análisis de error

Aritmética finita y análisis de error Aritmética finita y análisis de error Escuela de Ingeniería Informática de Oviedo (Dpto. de Matemáticas-UniOvi) Computación Numérica Aritmética finita y análisis de error 1 / 47 Contenidos 1 Sistemas decimal

Más detalles

Los polinomios. Un polinomio es una expresión algebraica con una única letra, llamada variable. Ejemplo: 9x 6 3x 4 + x 6 polinomio de variable x

Los polinomios. Un polinomio es una expresión algebraica con una única letra, llamada variable. Ejemplo: 9x 6 3x 4 + x 6 polinomio de variable x Los polinomios Los polinomios Un polinomio es una expresión algebraica con una única letra, llamada variable. Ejemplo: 9x 6 3x 4 + x 6 polinomio de variable x Elementos de un polinomio Los términos: cada

Más detalles

ELO311 Estructuras de Computadores Digitales. Unidad Aritmética

ELO311 Estructuras de Computadores Digitales. Unidad Aritmética ELO3 Estructuras de Computadores Digitales Unidad Aritmética Tomás Arredondo Vidal Este material está basado en: material de apoyo del texto de David Patterson, John Hennessy, "Computer Organization &

Más detalles

Naturaleza binaria. Conversión decimal a binario

Naturaleza binaria. Conversión decimal a binario Naturaleza binaria En los circuitos digitales sólo hay 2 voltajes. Esto significa que al utilizar 2 estados lógicos se puede asociar cada uno con un nivel de tensión, así se puede codificar cualquier número,

Más detalles

Sistemas Electrónicos Digitales. Práctica 1 Multiplicador de 8 bits secuencial con desplazamiento hacia la derecha

Sistemas Electrónicos Digitales. Práctica 1 Multiplicador de 8 bits secuencial con desplazamiento hacia la derecha Sistemas Electrónicos igitales Práctica de 8 bits secuencial con desplazamiento hacia la derecha Javier Toledo Moreo pto. Electrónica, Tecnología de Computadoras y Proyectos Universidad Politécnica de

Más detalles

UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3

UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3 UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3 INTRODUCCIÓN El elemento hardware de un sistema básico de proceso de datos se puede estructurar en tres partes claramente diferenciadas en cuanto a sus funciones:

Más detalles

Tema 4: Sistemas de Numeración. Codificación Binaria. Escuela Politécnica Superior Ingeniería Informática Universidad Autónoma de Madrid

Tema 4: Sistemas de Numeración. Codificación Binaria. Escuela Politécnica Superior Ingeniería Informática Universidad Autónoma de Madrid Tema 4: Sistemas de Numeración. Codificación Binaria Ingeniería Informática Universidad Autónoma de Madrid 1 O B J E T I V O S Sistemas de Numeración. Codificación Binaria Conocer los diferentes sistemas

Más detalles

Tema 2: Sistemas de representación numérica

Tema 2: Sistemas de representación numérica 2.1 Sistemas de Numeración Definiciones previas Comenzaremos por definir unos conceptos fundamentales. Existen 2 tipos de computadoras: Analógicas: actúan bajo el control de variables continuas, es decir,

Más detalles

by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true

by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true I. FUNDAMENTOS 3. Representación de la información Introducción a la Informática Curso de Acceso a la Universidad

Más detalles

Presentación de la materia Historia de las computadoras

Presentación de la materia Historia de las computadoras de la materia de las computadoras Organización de computadoras Universidad Nacional de Quilmes http://orga.blog.unq.edu.ar Horarios Dos bandas horarias: Banda Clase Aula Horario Docente Matutina Teoría

Más detalles

Seminario ESTALMAT Valladolid 2010. Fernando Tejada Presa

Seminario ESTALMAT Valladolid 2010. Fernando Tejada Presa Seminario ESTALMAT Valladolid 2010 Fernando Tejada Presa ÁBACO Y ESTRATEGIAS DE CÁLCULO En esta charla vamos a ver una de las actividades que venimos realizando con los alumnos de la sede de León desde

Más detalles

Figura 1. Símbolo que representa una ALU. El sentido y la funcionalidad de las señales de la ALU de la Figura 1 es el siguiente:

Figura 1. Símbolo que representa una ALU. El sentido y la funcionalidad de las señales de la ALU de la Figura 1 es el siguiente: Departamento de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Antioquia Arquitectura de Computadores y Laboratorio ISI355 (2011 2) Práctica No. 1 Diseño e implementación de una unidad aritmético

Más detalles

1. Informática e información. 2. Sistemas de numeración. 3. Sistema binario, operaciones aritméticas en binario, 4. Sistemas octal y hexadecimal. 5.

1. Informática e información. 2. Sistemas de numeración. 3. Sistema binario, operaciones aritméticas en binario, 4. Sistemas octal y hexadecimal. 5. Representación de la información Contenidos 1. Informática e información. 2. Sistemas de numeración. 3. Sistema binario, operaciones aritméticas en binario, 4. Sistemas octal y hexadecimal. 5. Conversiones

Más detalles

CAPÍTULO 4. EL EXPLORADOR DE WINDOWS XP

CAPÍTULO 4. EL EXPLORADOR DE WINDOWS XP CAPÍTULO 4. EL EXPLORADOR DE WINDOWS XP Características del Explorador de Windows El Explorador de Windows es una de las aplicaciones más importantes con las que cuenta Windows. Es una herramienta indispensable

Más detalles

DISCOS RAID. Se considera que todos los discos físicos tienen la misma capacidad, y de no ser así, en el que sea mayor se desperdicia la diferencia.

DISCOS RAID. Se considera que todos los discos físicos tienen la misma capacidad, y de no ser así, en el que sea mayor se desperdicia la diferencia. DISCOS RAID Raid: redundant array of independent disks, quiere decir conjunto redundante de discos independientes. Es un sistema de almacenamiento de datos que utiliza varias unidades físicas para guardar

Más detalles

1.1 Sistema de numeración binario

1.1 Sistema de numeración binario 1.1 Sistema de numeración binario Un sistema de numeración consta de: Un conjunto ordenado de cifras y un conjunto de operaciones. Llamaremos Base al número de cifras que hay en dicho conjunto. De este

Más detalles

OPERADORES: Maquinaria para realizar las instrucciones. Capítulo Tercero Fundamentos de Computadores Ingeniería de Telecomunicación

OPERADORES: Maquinaria para realizar las instrucciones. Capítulo Tercero Fundamentos de Computadores Ingeniería de Telecomunicación OPERADORES: Maquinaria para realizar las instrucciones. Capítulo Tercero Fundamentos de Computadores Ingeniería de Telecomunicación 1 Introducción (I) ALU / Arquitectura Von Neumann CPU banco de registros

Más detalles

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

Lo que definimos como CPU (Central Process Unit) o Unidad Central de Proceso, está estructurado por tres unidades operativamente diferentes: Facultad de Ciencias Exactas y Naturales y Agrimensura Departamento de Ingeniería Cátedra : Proyecto Final Apuntes : Microprocesadores Tema 6-1 : Esquema de un µp. La CPU Lo que definimos como CPU (Central

Más detalles

En la actualidad ASCII es un código de 8 bits, también conocido como ASCII extendido, que aumenta su capacidad con 128 caracteres adicionales

En la actualidad ASCII es un código de 8 bits, también conocido como ASCII extendido, que aumenta su capacidad con 128 caracteres adicionales Definición(1) Sistemas numéricos MIA José Rafael Rojano Cáceres Arquitectura de Computadoras I Un sistema de representación numérica es un sistema de lenguaje que consiste en: un conjunto ordenado de símbolos

Más detalles

Sistemas de numeración y aritmética binaria

Sistemas de numeración y aritmética binaria Sistemas de numeración y aritmética binaria Héctor Antonio Villa Martínez Programa de Ciencias de la Computación Universidad de Sonora Este reporte consta de tres secciones. Primero, la Sección 1 presenta

Más detalles

Informática Bioingeniería

Informática Bioingeniería Informática Bioingeniería Representación Números Negativos En matemáticas, los números negativos en cualquier base se representan del modo habitual, precediéndolos con un signo. Sin embargo, en una computadora,

Más detalles

Tema 1: Sistemas de numeración

Tema 1: Sistemas de numeración 1 Tema 1: Sistemas de numeración Felipe Machado Norberto Malpica Susana Borromeo Joaquín Vaquero López, 2013 2 01 Digital vs. Analógico Índice 02 Sistemas de numeración 03 Códigos binarios 04 Aritmética

Más detalles

TEMA 1 Representación de la información

TEMA 1 Representación de la información TEMA 1 Representación de la información Tema 1: Representación de la información. Aritmética y Representación binaria 1) Introducción BB1, Cap 2, Ap: 2.1, 2.2.1 2) Sistemas binario-octal-hexadecimal BB1,

Más detalles

Tema 11: Sistemas combinacionales

Tema 11: Sistemas combinacionales Tema 11: Sistemas combinacionales Objetivo: Introducción Generador Comprobador de paridad Comparadores Semisumador (HA) Sumador Completo (FA) Expansión de sumadores Sumador paralelo con arrastre serie

Más detalles

EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO

EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO 1º) Considérese un número estrictamente positivo del sistema de números máquina F(s+1, m, M, 10). Supongamos que tal número es: z = 0.d 1 d...d s 10 e Responde

Más detalles

Tema 2. Diseño del repertorio de instrucciones

Tema 2. Diseño del repertorio de instrucciones Soluciones a los problemas impares Tema 2. Diseño del repertorio de instrucciones Arquitectura de Computadores Curso 2009-2010 Tema 2: Hoja: 2 / 16 Tema 2: Hoja: 3 / 16 Base teórica Al diseñar un computador,

Más detalles

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014 Tecnologías en la Educación Matemática jac@cs.uns.edu.ar Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR 1 Datos Los algoritmos combinan datos con acciones. Los datos de entrada

Más detalles

El sistema decimal, es aquél en el que se combinan 10 cifras (o dígitos) del 0 al 9 para indicar una cantidad específica.

El sistema decimal, es aquél en el que se combinan 10 cifras (o dígitos) del 0 al 9 para indicar una cantidad específica. 5.2 SISTEMAS DE NUMERACIÓN. DECIMAL El sistema decimal, es aquél en el que se combinan 10 cifras (o dígitos) del 0 al 9 para indicar una cantidad específica. La base de un sistema indica el número de caracteres

Más detalles

SISTEMAS NUMERICOS CAMILO ANDREY NEIRA IBAÑEZ UNINSANGIL INTRODUCTORIO A LA INGENIERIA LOGICA Y PROGRAMACION

SISTEMAS NUMERICOS CAMILO ANDREY NEIRA IBAÑEZ UNINSANGIL INTRODUCTORIO A LA INGENIERIA LOGICA Y PROGRAMACION SISTEMAS NUMERICOS CAMILO ANDREY NEIRA IBAÑEZ UNINSANGIL INTRODUCTORIO A LA INGENIERIA LOGICA Y PROGRAMACION CHIQUINQUIRA (BOYACA) 2015 1 CONTENIDO Pág. QUE ES UN SISTEMA BINARIO. 3 CORTA HISTORIA DE LOS

Más detalles

Ecuaciones de primer grado con dos incógnitas

Ecuaciones de primer grado con dos incógnitas Ecuaciones de primer grado con dos incógnitas Si decimos: "las edades de mis padres suman 120 años", podemos expresar esta frase algebraicamente de la siguiente forma: Entonces, Denominamos x a la edad

Más detalles

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

Fundamentos de Programación. Sabino Miranda-Jiménez Fundamentos de Programación Sabino Miranda-Jiménez MÓDULO 1. Introducción a la computación Temas: La computación en el profesional de ingeniería Desarrollo computacional en la sociedad Aplicaciones Software

Más detalles

INSTITUTO UNIVERSITARIO DE TECNOLOGÍA JOSE LEONARDO CHIRINO PUNTO FIJO EDO-FALCON CATEDRA: ARQUITECTURA DEL COMPUTADOR PROFESOR: ING.

INSTITUTO UNIVERSITARIO DE TECNOLOGÍA JOSE LEONARDO CHIRINO PUNTO FIJO EDO-FALCON CATEDRA: ARQUITECTURA DEL COMPUTADOR PROFESOR: ING. INSTITUTO UNIVERSITARIO DE TECNOLOGÍA JOSE LEONARDO CHIRINO PUNTO FIJO EDO-FALCON CATEDRA: ARQUITECTURA DEL COMPUTADOR PROFESOR: ING. JUAN DE LA ROSA T. TEMA 1 Desde tiempos remotos el hombre comenzó a

Más detalles

ARITMÉTICA EN PUNTO FLOTANTE

ARITMÉTICA EN PUNTO FLOTANTE ARITMÉTICA EN PUNTO FLOTANTE AMPLIACIÓN DE ESTRUCTURA DE COMPUTADORES Daniel Mozos Muñoz Facultad de Informática 1 Aritmética en punto flotante 1. Representación de números en punto flotante 2. IEEE 754

Más detalles

Los números racionales

Los números racionales Los números racionales Los números racionales Los números fraccionarios o fracciones permiten representar aquellas situaciones en las que se obtiene o se debe una parte de un objeto. Todas las fracciones

Más detalles

Algoritmos de multiplicación y división.

Algoritmos de multiplicación y división. Capítulo 11. 1 Algoritmos de multiplicación y división. A continuación se estudiarán algoritmos para efectuar las operaciones de multiplicación y división entera. Usualmente estas operaciones están soportadas

Más detalles

Organización del Computador. Prof. Angela Di Serio

Organización del Computador. Prof. Angela Di Serio Punto Flotante Muchas aplicaciones requieren trabajar con números que no son enteros. Existen varias formas de representar números no enteros. Una de ellas es usando un punto o coma fijo. Este tipo de

Más detalles

La Unidad Procesadora.

La Unidad Procesadora. La Unidad Procesadora. En un sistema digital complejo, la capa de hardware de la máquina es el nivel más bajo del modelo de capas de un sistema microcomputarizado. La unidad procesadora es una parte del

Más detalles

Centro de Capacitación en Informática

Centro de Capacitación en Informática Fórmulas y Funciones Las fórmulas constituyen el núcleo de cualquier hoja de cálculo, y por tanto de Excel. Mediante fórmulas, se llevan a cabo todos los cálculos que se necesitan en una hoja de cálculo.

Más detalles

Representación de la Información

Representación de la Información Representar: Expresar una información como una combinación de símbolos de un determinado lenguaje. Trece -> símbolos 1 y 3 Interpretar: Obtener la información originalmente representada a partir de una

Más detalles

Unidad de trabajo 2: INFORMÁTICA BÁSICA (primera parte)

Unidad de trabajo 2: INFORMÁTICA BÁSICA (primera parte) Unidad de trabajo 2: INFORMÁTICA BÁSICA (primera parte) Unidad de trabajo 2: INFORMÁTICA BÁSICA... 1 1. Representación interna de datos.... 1 1.2. Sistemas de numeración.... 2 1.3. Aritmética binaria...

Más detalles

t i Q 7 Q 6 Q 5 Q 4 Q 3 Q 2 Q 1 Q 0

t i Q 7 Q 6 Q 5 Q 4 Q 3 Q 2 Q 1 Q 0 Clase 5 Un registro es un conjunto de n latch o Flip-Flops asociados que permiten almacenar temporalmente una palabra o grupo de n bit. Hay dos clases de registros típicos sincrónicos 1. el registro de

Más detalles

3.8 Construcción de una ALU básica

3.8 Construcción de una ALU básica 3.8 Construcción de una ALU básica En este punto veremos como por medio de compuertas lógicas y multiplexores, se pueden implementar las operaciones aritméticas básicas de una ALU. Esencialmente en este

Más detalles

Llamamos potencia a todo producto de factores iguales. Por ejemplo: 3 4 = 3 3 3 3

Llamamos potencia a todo producto de factores iguales. Por ejemplo: 3 4 = 3 3 3 3 1. NÚMEROS NATURALES POTENCIAS DE UN NÚMERO NATURAL Llamamos potencia a todo producto de factores iguales. Por ejemplo: 3 4 = 3 3 3 3 El factor que se repite es la base, y el número de veces que se repite

Más detalles

Sumador: C o. C in. Sumador serie: Sumador paralelo con propagación de arrastre:

Sumador: C o. C in. Sumador serie: Sumador paralelo con propagación de arrastre: UNIDAD ARITMETICO-LOGICA Conceptos Unidad aritmético-lógica: Elemento que realiza las operaciones aritméticas y lógicas entre los datos Operaciones típicas Sumar Restar Multiplicar Desplazamiento de registros

Más detalles

Representación de números enteros: el convenio signo y magnitud

Representación de números enteros: el convenio signo y magnitud Representación de números enteros: el convenio signo y magnitud Apellidos, nombre Martí Campoy, Antonio (amarti@disca.upv.es) Departamento Centro Informàtica de Sistemes i Computadors Escola Tècnica Superior

Más detalles

Clase 02: Representación de datos

Clase 02: Representación de datos Arquitectura de Computadores y laboratorio Clase 02: Representación de datos Departamento de Ingeniería de Sistemas Universidad de Antioquia 2015-2 Contenido 1 2 Representación de la Información Y sistemas

Más detalles

Representación de números en binario

Representación de números en binario Representación de números en binario Héctor Antonio Villa Martínez Programa de Ciencias de la Computación Universidad de Sonora El sistema binario es el más utilizado en sistemas digitales porque es más

Más detalles

TEMA 6 ARITMÉTICA BINARIA Y CIRCUITOS ARITMÉTICOS

TEMA 6 ARITMÉTICA BINARIA Y CIRCUITOS ARITMÉTICOS TEMA 6 ARITMÉTICA BINARIA Y CIRCUITOS ARITMÉTICOS . ARITMÉTICA BINARIA. Aritmética binaria básica a) Suma binaria.sea C i el acarreo (carry) generado al sumar los bits A i B i (A i +B i ) 2. Sea i= y C

Más detalles

!!!!!!!! !!!!! Práctica!4.! Programación!básica!en!C.! ! Grado!en!Ingeniería!!en!Electrónica!y!Automática!Industrial! ! Curso!2015H2016!

!!!!!!!! !!!!! Práctica!4.! Programación!básica!en!C.! ! Grado!en!Ingeniería!!en!Electrónica!y!Automática!Industrial! ! Curso!2015H2016! INFORMÁTICA Práctica4. ProgramaciónbásicaenC. GradoenIngenieríaenElectrónicayAutomáticaIndustrial Curso2015H2016 v2.1(18.09.2015) A continuación figuran una serie de ejercicios propuestos, agrupados por

Más detalles

DESARROLLO DE HABILIDADES DEL PENSAMIENTO LÓGICO

DESARROLLO DE HABILIDADES DEL PENSAMIENTO LÓGICO I. SISTEMAS NUMÉRICOS DESARROLLO DE HABILIDADES DEL PENSAMIENTO LÓGICO LIC. LEYDY ROXANA ZEPEDA RUIZ SEPTIEMBRE DICIEMBRE 2011 Ocosingo, Chis. 1.1Sistemas numéricos. Los números son los mismos en todos

Más detalles

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática Tema 1 Introducción. Arquitectura básica y Sistemas Operativos Fundamentos de Informática Índice Descripción de un ordenador Concepto básico de Sistema Operativo Codificación de la información 2 1 Descripción

Más detalles

TEMA 6. Circuitos Aritméticos.

TEMA 6. Circuitos Aritméticos. Fundamentos de los Computadores. Circuitos Aritméticos T6- TEMA 6. Circuitos Aritméticos. INDICE: OPERACIONES EN EL SISTEMA BINARIO CIRCUITOS SUMADORES CIRCUITOS RESTADORES UNIDADES LÓGICO ARITMÉTICAS

Más detalles

ÍNDICE DISEÑO DE CONTADORES SÍNCRONOS JESÚS PIZARRO PELÁEZ

ÍNDICE DISEÑO DE CONTADORES SÍNCRONOS JESÚS PIZARRO PELÁEZ ELECTRÓNICA DIGITAL DISEÑO DE CONTADORES SÍNCRONOS JESÚS PIZARRO PELÁEZ IES TRINIDAD ARROYO DPTO. DE ELECTRÓNICA ÍNDICE ÍNDICE... 1 1. LIMITACIONES DE LOS CONTADORES ASÍNCRONOS... 2 2. CONTADORES SÍNCRONOS...

Más detalles

Materia: Informática. Nota de Clases Sistemas de Numeración

Materia: Informática. Nota de Clases Sistemas de Numeración Nota de Clases Sistemas de Numeración Conversión Entre Sistemas de Numeración 1. EL SISTEMA DE NUMERACIÓN 1.1. DEFINICIÓN DE UN SISTEMA DE NUMERACIÓN Un sistema de numeración es un conjunto finito de símbolos

Más detalles

TEMA 1: SISTEMAS INFORMÁTICOS. Parte 2: representación de la información

TEMA 1: SISTEMAS INFORMÁTICOS. Parte 2: representación de la información TEMA 1: SISTEMAS INFORMÁTICOS Parte 2: representación de la información Qué vamos a ver? Cómo se representa y almacena la información en un ordenador Cómo podemos relacionar la información que entendemos

Más detalles

TABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse.

TABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse. TABLA DE DECISION La tabla de decisión es una herramienta que sintetiza procesos en los cuales se dan un conjunto de condiciones y un conjunto de acciones a tomar según el valor que toman las condiciones.

Más detalles

Divisibilidad y números primos

Divisibilidad y números primos Divisibilidad y números primos Divisibilidad En muchos problemas es necesario saber si el reparto de varios elementos en diferentes grupos se puede hacer equitativamente, es decir, si el número de elementos

Más detalles

CIRCUITOS ARITMÉTICOS. Tema 5: CIRCUITOS ARITMÉTICOS

CIRCUITOS ARITMÉTICOS. Tema 5: CIRCUITOS ARITMÉTICOS Tema 5: CIRCUITOS ARITMÉTICOS Contenido: * Aritmética binaria. * Circuito semisumador. Sumador completo. * Operaciones con n bits. Sumador paralelo con arrastre serie. * Circuito sumador-restador. * Sumador

Más detalles

Biblioteca Virtual Ejercicios Resueltos

Biblioteca Virtual Ejercicios Resueltos EJERCICIO 13 13 V a l o r n u m é r i c o Valor numérico de expresiones compuestas P r o c e d i m i e n t o 1. Se reemplaza cada letra por su valor numérico 2. Se efectúan las operaciones indicadas Hallar

Más detalles

SISTEMAS Y CÓDIGOS DE NUMERACIÓN

SISTEMAS Y CÓDIGOS DE NUMERACIÓN INTRODUCCIÓN SISTEMAS Y CÓDIGOS DE NUMERACIÓN Una señal analógica es aquella que puede tomar infinitos valores para representar la información. En cambio, en una señal digital se utiliza sólo un número

Más detalles

Sebastián García Galán Sgalan@ujaen.es

Sebastián García Galán Sgalan@ujaen.es Universidad de Jaén E.U.P. Linares Dpto. Telecomunicaciones Área de Ingeniería Telemática Sebastián García Galán Sgalan@ujaen.es TEMA 2: 2.1 CODIFICACIÓN 2.2 SISTEMAS DE NUMERACIÓN BASES DE NUMERACIÓN

Más detalles

1. Representación de la información en los sistemas digitales

1. Representación de la información en los sistemas digitales Oliverio J. SantanaJaria Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2005 2006 1. Representación de la información en los sistemas digitales Durante Hoy Los digital tipo muchos

Más detalles

Curso PHP Módulo 1 R-Luis

Curso PHP Módulo 1 R-Luis Lenguaje PHP Introducción Archivos HTML y PHP: Crear un archivo php es tan sencillo como cambiarle la extensión a un archivo html, por ejemplo podemos pasar de index.html a index.php sin ningún inconveniente.

Más detalles

Arquitectura Von Neumann

Arquitectura Von Neumann Arquitectura Von Neumann Arquitectura Von Neumann Establecida en 1945 por Von Neumann Modelo básico de arquitectura utilizado en la mayoría de los computadores Su idea es la de conectar permanentemente

Más detalles

1º) Siempre que se pueda, hay que sacar factor común: :a b ± a c ± a d ± = a (b ± c ± d ± ):

1º) Siempre que se pueda, hay que sacar factor común: :a b ± a c ± a d ± = a (b ± c ± d ± ): Pág. 1 de 7 FAC T O R I Z AC I Ó N D E P O L I N O M I O S Factorizar (o descomponer en factores) un polinomio consiste en sustituirlo por un producto indicado de otros de menor grado tales que si se multiplicasen

Más detalles

Lógica Binaria. Arquitectura de Ordenadores. Codificación de la Información. Abelardo Pardo abel@it.uc3m.es. Universidad Carlos III de Madrid

Lógica Binaria. Arquitectura de Ordenadores. Codificación de la Información. Abelardo Pardo abel@it.uc3m.es. Universidad Carlos III de Madrid Arquitectura de Ordenadores Codificación de la Información Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Lógica Binaria COD-1 Internamente el ordenador

Más detalles

Guía 01: Sistemas Numéricos

Guía 01: Sistemas Numéricos Guía 01: Sistemas Numéricos 1.1.- Sistemas Numéricos, bases 2, 10 y 16 En los sistemas numéricos posicionales un número se expresa como los dígitos del sistema multiplicados por la base de dicho sistema

Más detalles

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

Capítulo 1: Sistemas de representación numérica Introducción. Dpto. de ATC, Universidad de Sevilla - Página 1 de 8 Dpto. de ATC, Universidad de Sevilla - Página de Capítulo : INTRODUCCIÓN SISTEMAS DE REPRESENTACIÓN NUMÉRICA Introducción Bases de numeración Sistema decimal Sistema binario Sistema hexadecimal REPRESENTACIÓN

Más detalles

Programa para el Mejoramiento de la Enseñanza de la Matemática en ANEP Proyecto: Análisis, Reflexión y Producción. Fracciones

Programa para el Mejoramiento de la Enseñanza de la Matemática en ANEP Proyecto: Análisis, Reflexión y Producción. Fracciones Fracciones. Las fracciones y los números Racionales Las fracciones se utilizan cotidianamente en contextos relacionados con la medida, el reparto o como forma de relacionar dos cantidades. Tenemos entonces

Más detalles