La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Www.microse.cic.ipn.mx Arquitecturas de Computadoras Capitulo 2 Aritmética de enteros.

Presentaciones similares


Presentación del tema: "Www.microse.cic.ipn.mx Arquitecturas de Computadoras Capitulo 2 Aritmética de enteros."— Transcripción de la presentación:

1 www.microse.cic.ipn.mx Arquitecturas de Computadoras Capitulo 2 Aritmética de enteros

2 www.microse.cic.ipn.mx 2 Operaciones aritméticas de enteros Adición 7 10 = 0000 0000 0000 0111 b + 6 10 = 0000 0000 0000 0110 b 13 10 = 0000 0000 0000 1101 b Los cuatro bits menos significativos tienen toda la acción Adición

3 www.microse.cic.ipn.mx 3 … 0 0 1 1 1 b + … 0 0 1 1 0 b Adición (0) 1(1) 0(1) 1(0) 1(0)0 (0)(1) (0) Operaciones aritméticas de enteros

4 www.microse.cic.ipn.mx 4 (adición de un núm. complemento a 2) 6 10 = 0000 0000 0000 0110 b + -5 10 = 1111 1111 1111 1011 b 1 10 = 0000 0000 0000 0001 b Se puede decir que “ocurre” un sobre flujo en la salida. Pero cuando se suman operandos de distinto signo, el resultado es menor que uno de los operandos. Operaciones aritméticas de enteros Substracción

5 www.microse.cic.ipn.mx Sobre-flujo La suma o resta de dos números de 32-bits, podría arrojar un resultado que requiera de 33-bits para ser expresado totalmente. Esto significa que el acarreo ocurre en el bit de signo. Ocurre sobre flujo en los siguientes casos : Resta : núm. positivo - núm. negativo = núm. negativo Resta : núm. negativo - núm. positivo = núm. positivo Suma : núm. positivo + núm. positivo = núm. negativo Suma : núm. negativo + núm. negativo = núm. positivo

6 www.microse.cic.ipn.mx Sobre-flujo (Sin Signo) La suma o resta de dos números sin signo, son comúnmente utilizados en direccionamiento de memoria. El sobre flujo se ignora!. Los arquitectos de computadoras deben proporcionar una forma de ignorar el sobre flujo en algunos casos y reconocerlo en otras. MIPS proporciona dos tipos de instrucciones:  Suma (add), Suma un inmediato (addi) y Resta (sub): Causan excepciones de sobre-flujo.  Suma sin signo (addu), suma un inmediato sin signo (addiu) y resta sin signo (subu) : ignoran sobre-flujo.

7 www.microse.cic.ipn.mx 7 Implicaciones de programación C ignora el sobre-flujo: el compilador de C para MIPS siempre genera las versiones sin signo de las instrucciones aritméticas (addu, addiu, subu) no importa el tipo de variable. El procesador MIPS : detecta el sobre flujo con una excepción (BIOS) para corregir el código. Se utiliza el registro EPC (Exception Program Counter) para almacenar la dirección de la instrucción que causó la excepción, utiliza la instrucción mfsc0 (move from system control ) para copiar EPC a un registro de propósito general y regresar el control del programa.

8 www.microse.cic.ipn.mx 8 Operaciones Lógicas Shift : mueven todos los bits de una palabra a la derecha o a la izquierda, llenando los bits vacíos con ceros. $0: 0000 0000 0000 0000 0000 0000 0000 0110 b = 6 10 sll $t2, $0, 8 $t2: 0000 0000 0000 0000 0000 0110 0000 0000 b = 1536 10 MIPS Shift: sll (shift left logical) srl (shift right logical) Shift

9 www.microse.cic.ipn.mx 9 Operaciones Lógicas AND : es una operación bit-a-bit, que se realiza entre dos vectores de igual numero de bits. (1&1=1)(1&0=0) $t1: 0000 0000 0000 0000 0000 0000 0000 0110 b and $t0, $t1, $t2 $t2: 0000 0000 0000 0000 0000 0110 0000 1111 b Muy útil para crear “mascaras” de bits $t0: 0000 0000 0000 0000 0000 0000 0000 0110 b AND

10 www.microse.cic.ipn.mx 10 OR : es una operación bit-a-bit, que se realiza entre dos vectores de igual número de bits. (1|X=1)(0|0=0) $t1: 0000 0000 0000 0000 0000 0000 0000 0110 b or $t0, $t1, $t2 $t2: 0000 0000 0000 0000 0000 0110 0000 1111 b $t0: 0000 0000 0000 0000 0000 0110 0000 1111 b MIPS : and, andi (and, and inmediate) or, ori (or, or inmediate) Operaciones LógicasOR

11 www.microse.cic.ipn.mx 11 Resumen: OperaciónOperador de CInstrucción MIPS Desplazamiento a la izq.<<sll Desplazamiento a la der.>>srl and (bit-a-bit)&and, andi or (bit-a-bit)|or, ori Operaciones LógicasC-MIPS

12 www.microse.cic.ipn.mx 12 Diseñando Si el procesador es el “cerebro” de la computadoras, las unidades funcionales podrían ser las “neuronas”. ALU’s, Sumadores, Multiplicadores, Divisores, SQR, etc. Unidades Funcionales

13 www.microse.cic.ipn.mx 13 ALU 1-bit Las operaciones lógicas son las mas fáciles de implementar por que se mapean directamente a los componentes de hardware. ABDand(C)or (C)inv (C)Mux (C) 000001A 011011B 10010 11110

14 www.microse.cic.ipn.mx 14 ALU Unidad Lógica de 1-Bit /AND/OR

15 www.microse.cic.ipn.mx 15 Sumador de 1-bit

16 www.microse.cic.ipn.mx 16 EntradasSalidas abCinCoutSumaComentarios 000000+0+0=00 001010+0+1=01 010010+1+0=01 011100+1+1=10 100011+0+0=01 101101+0+1=10 110101+1+0=10 111111+1+1=11 Sumador de 1-bit

17 www.microse.cic.ipn.mx 17 Acarreo de salida (Cout) Cout= (!a*b*Cin)+(a*!b*Cin)+(a*b*!Cin)+(a*b*Cin) EntradasSalidas abCinCoutSumaComentarios 000000+0+0=00 001010+0+1=01 010010+1+0=01 011100+1+1=10 100011+0+0=01 101101+0+1=10 110101+1+0=10 111111+1+1=11 Cout= (Cin*b)+(Cin*a)+(a*b)

18 www.microse.cic.ipn.mx 18 Bit de Acarreo Demostrar la simplificación de la ecuación para Cout

19 www.microse.cic.ipn.mx 19 Sumador de 1-bit Suma= (!a*!b*Cin) + (!a*b*!Cin) + (a*!b*!Cin) + (a*b*Cin) EntradasSalidas abCinCoutSumaComentarios 000000+0+0=00 001010+0+1=01 010010+1+0=01 011100+1+1=10 100011+0+0=01 101101+0+1=10 110101+1+0=10 111111+1+1=11 Suma= (a x b) x Cin; x= or exclusiva

20 www.microse.cic.ipn.mx 20 Sumador Demostrar la simplificación de la ecuación para Suma

21 www.microse.cic.ipn.mx 21 Sumador Completo 1-bit

22 www.microse.cic.ipn.mx 22 ALU (AND, OR, SUMA) El sumador puede calcular: a + b a +!b + 1 = a – b (seleccionando invert y Cin)

23 www.microse.cic.ipn.mx 23 Completando una ALU slt (set on less than), slt $1, $2, $3 Detecta cuando a < b, $1 = 01 si $2 < $3, $1 = 00 de otra manera. Si hacemos: (a – b) < 0 (a – b) + b < 0 + b a < b Es exactamente la condición de sobre flujo que se da en substracción de enteros con signo. MIPS

24 www.microse.cic.ipn.mx 24 set on less than

25 www.microse.cic.ipn.mx 25 32-bit ALU

26 www.microse.cic.ipn.mx 26 Soportando Saltos Condicionales Estas instrucciones saltan si dos registros son iguales. La forma rápida de ver si (a==b) es haciendo (a-b) y checar si el resultado es cero. OR dinámica

27 www.microse.cic.ipn.mx 27 ALU 32-bits

28 www.microse.cic.ipn.mx 28 Cálculo rápido del bit de acarreo Desde luego existen técnicas para mejorar el desempeño de los circuitos… ¿Investigue como mejorar esta ALU mediante el cálculo rápido del acarreo? ¿Cuales son los sumadores que tienen mejor desempeño?

29 www.microse.cic.ipn.mx 29 Multiplicación 0 1 1 0 X 0 0 1 0 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 + Desplazamiento

30 www.microse.cic.ipn.mx 30 Multiplicador 0 0 0 0 0 0 1 0 Inicio 0 1 1 0 0

31 www.microse.cic.ipn.mx 31 0 0 0 0 0 0 1 0 1er Ciclo: desplaza a la derecha (Reg. Prod.) 0 1 1 0 0 0 Multiplicador

32 www.microse.cic.ipn.mx 32 0 0 0 0 0 0 0 1 1er Ciclo: estado final 0 1 1 0 1 1 Multiplicador

33 www.microse.cic.ipn.mx 33 0 1 1 0 0 0 0 1 2do Ciclo: estado inicial Suma y …. 0 1 1 0 1 1 Multiplicador

34 www.microse.cic.ipn.mx 34 0 0 1 1 0 0 0 0 2do Ciclo: estado inicial Suma y Desplaza 0 1 1 0 1 1 Multiplicador

35 www.microse.cic.ipn.mx 35 0 0 1 1 0 0 0 0 2do Ciclo: estado final 0 1 1 0 0 0 Multiplicador

36 www.microse.cic.ipn.mx 36 0 0 1 1 0 0 0 0 3er Ciclo: estado inicial 0 1 1 0 0 0 Multiplicador

37 www.microse.cic.ipn.mx 37 0 0 0 1 1 0 0 0 3er Ciclo: estado final desplaza 0 1 1 0 0 0 Multiplicador

38 www.microse.cic.ipn.mx 38 0 0 0 1 1 0 0 0 4er Ciclo: estado inicial 0 1 1 0 0 0 Multiplicador

39 www.microse.cic.ipn.mx 39 0 0 0 0 1 1 0 0 4to Ciclo: estado final Desplaza (fin) 0 1 1 0 0 0 Multiplicador

40 www.microse.cic.ipn.mx 40 Algoritmo de multiplicación Desde luego existen técnicas para mejorar el desempeño de los circuitos… ¿Investigue como mejorar este multiplicador? ¿Cuales son los Multiplicadores que tienen mejor desempeño? Booth


Descargar ppt "Www.microse.cic.ipn.mx Arquitecturas de Computadoras Capitulo 2 Aritmética de enteros."

Presentaciones similares


Anuncios Google