ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

54
ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012

Transcript of ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

Page 1: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

ARITMÉTICA PARA COMPUTADORASITCR – SSC

I Semestre 2012

Page 2: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

2

La semana anterior…

Infraestructura de Software Aspectos introductorios sobre Aritmética

de Computadores

Page 3: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

3

Prueba Corta #2

1. Mencione y explique brevemente los pasos (herramientas o aplicaciones) que interfieren en la generación de un archivo ejecutable, partiendo desde un programa implementado en lenguaje de alto nivel.

2. Sistemas numéricos1. Convertir a decimal los números binarios: 110001,

10111001

2. Convertir a binario los números decimales: 1463, 1022, y 333

3. Convertir a base 16: 3191 (10), 210 (10), y 1011011 (2)

3. Mencione la(s) diferencia(s) entre la tecnología multi-core y aquellas de multiprocesamiento como HyperThreading, en el caso de en Intel.

Page 4: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

4

Conceptos, representación, operaciones aritméticas…

Aritmética para Computadoras

Page 5: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

5

ARITMETICA PARA COMPUTADORAS: UNIDAD ARITMÉTICA Y LÓGICA

Objetivo Estudio de uno de los Componentes Clásicos de una

Computadora Unidad Aritmético Lógica (ALU)

ALU Hace los cálculos El resto de los elementos de la computadora están para

suministrar datos a la ALU UDC, Registros, Memoria, E/S

Maneja enteros Puede manejar números de punto flotante (reales) Puede ser una FPU separada (coprocesador matemático)

Page 6: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

6

ALU Entradas y Salidas

Page 7: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

7

Solo para recordar… Notación, notación expandida…

Escribir en notación expandida los números: 2468 146.723Ejemplo: Expresar el número 837.526 en notación

expandida. Solución: Haciendo uso de la forma general y la notación expandida obtenemos.

S2S1S0.S-1S-2 S-3

8 3 7. 5 2 6837.526= 8 * 102 + 3 * 101 + 7 * 100 + 5 * 10-1 + 2 * 10-2 + 6 * 10-

3

837.526= 800 + 30 +7 + 5/10 + 2/100 + 6/1000

Page 8: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

8

Solo para recordar… Sistemas de numeración

Conjunto de símbolos usados para representar información numérica.

El número de símbolos de este conjunto depende de la base del sistema de numeración. Ejemplos:

Binario {0,1}

Octal {0,1,2,3,4,5,6,7}

Decimal {0,1,2,3,4,5,6,7,8,9}

Hexadecimal {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}

Page 9: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

9

Solo para recordar… Aritmética Binaria

No es más que aquella aritmética que se da en el sistema de numeración de base 2, y que es utilizada para construir los códigos del computador.

Operaciones aritméticas: Suma, Resta, Multiplicación y División

Page 10: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

10

Representación de Enteros

Solo tenemos 0 y 1 para representar todo Números positivos almacenados en binario

Ejemplo, 43=00101011 No hay signo menos No hay puntos Representación de positivos y

negativos Signo-Magnitud Complemento a uno Complemento a dos

Page 11: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

11

Signo-Magnitud

El bit de la izquierda es el bit de signo (por ejemplo, la IBM 7090 utilizó esta representación) 0 significa positivo 1 significa negativo Ejemplo

+18 = 00010010 -18 = 10010010

Problemas Se necesita considerar signo y magnitud en la

aritmética Dos representaciones del cero (+0 y -0)

Page 12: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

12

Signo-Magnitud

Ejemplo El número -9710, que siendo negativo, llevará

como bit de signo un 1 Se realiza la conversión: el valor absoluto de -

9710 es |-9710| = 9710. Que en binario es: 11000012;

Se coloca todo junto, el número -9710 en binario con formato de Signo y Magnitud es: 111000012. Donde el 1 en el bit más significativo indica un número negativo, y 11000012 es el significando en valor absoluto.

Page 13: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

13

Signo-Magnitud

Ejemplo Para el caso inverso, dado un número binario en

Signo y Magnitud, por ejemplo, 101101012, procedemos a: Analizar el bit más significativo, que siendo un 1 indica

que el número es negativo Convertir el significando a la base deseada, por

ejemplo, en decimal, tomando en cuenta que el valor obtenido está en valor absoluto y la magnitud real estará dada por el bit de signo obtenido antes: 01101012 = |5310|. Siendo que el bit de signo es 1, el número real es -5310. Si el bit de signo fuese 0, el número hubiese sido +5310.

Page 14: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

14

Signo-Magnitud

Desventajas de la representación en Signo y Magnitud Es más complejo operar aritméticamente. Para

realizar una suma, por ejemplo, primero hay que determinar si los dos números tienen el mismo signo, y en caso de que sea así, realizar la suma de la parte significativa, pero en caso contrario, restar el mayor del menor y asignar el signo del mayor.

Posee doble representación del cero. Al representar en Signo y Magnitud, aparece el cero signado: 000000002 (+010) y 100000002 (-010).

Page 15: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

15

Complemento a Uno

Otro enfoque sería representar números negativos usando el complemento a la base menos uno (común en computadoras más antiguas; el PDP-1 y la serie de UNIVAC 1100/2200)

En el caso de los números binarios, sería el complemento a uno y la forma del complemento a uno de un número binario es un NOT bit a bit aplicado al número, es decir, la inversión de unos por ceros y ceros por unos.

De esta forma, en la representación por Complemento a uno de un número signado de n-bits asignamos:

Un bit para representar el signo. Ese bit a menudo es el bit más significativo y, por convención: un 0 denota un número positivo, y un 1 denota un número negativo;

Los (n-1)-bits restantes para representar el significando que es la magnitud del número en valor absoluto para el caso de números positivos, o bien, en el complemento a uno del valor absoluto del número, en caso de ser negativo.

Page 16: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

16

Complemento a Uno

Ejemplo: Supongamos que tenemos que representar el número -

9710 Procedemos a: Tomar nota del signo del número -9710, que siendo negativo,

llevará como bit de signo un 1; Como el signo es negativo, el número a continuación del bit

de signo, deberá expresarse en complemento a uno. Al realizar la conversión: el valor absoluto de -9710 es |-9710| = 9710. Que en binario es: 11000012, y el complemento a uno de 11000012 es C1(1100001) = 00111102;

Colocar todo junto, el número -9710 en binario con formato de Complemento a uno es: 100111102. Donde el 1 en el bit más significativo indica un número negativo, y 00111102 es el significando en complemento a uno del valor absoluto del número.

Page 17: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

17

Complemento a Uno

Desventajas Posee doble representación del cero. Al

representar en Complemento a uno, aparece nuevamente el cero signado: 000000002 (+010) y 111111112 (-010).

Page 18: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

18

Complemento a Dos

El sistema más empleado para representar números binarios con signo es el de complemento a 2.

Para considerar este último sistema es necesario tener en cuenta el complemento a 1, el cual se obtiene cambiando cada bit del número por su complemento.

El complemento a 2 de un número binario se obtiene tomando el complemento a 1 y sumándole una unidad al bit menos significativo

Page 19: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

19

Complemento a Dos

Ejemplo: Para representar el número con signo +43 se agrega un bit 0 adelante del número binario puro, así:

43 = 101011+43= 0101011

Page 20: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

20

Complemento a Dos

En cambio para obtener el número negativo –43 se encuentra el complemento a 2 del número positivo:

Número binario positivo: 0101011

Complemento a 1: 1010100 ___ +1

Complemento a 2: 1010101

Por lo que: 1010101= -43

Page 21: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

21

Complemento a Dos

Ventajas de la representación en Complemento a dos No posee doble representación del cero. Permite operar aritméticamente.

Page 22: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

22

Complemento a Dos

+3 = 00000011 +2 = 00000010 +1 = 00000001 +0 = 00000000 -1 = 11111111 -2 = 11111110 -3 = 11111101

Page 23: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

23

Negación caso especial #1

0 = 00000000 Negación bit a bit 11111111 Agrega 1 al LSB +1 Resultado 1 00000000 Se ignora el overflow

Page 24: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

24

Negación caso especial #2

-128 = 10000000 Negación de bits 01111111 Suma 1 al LSB +1 Resultado 10000000 Tal que: -(-128) = -128

Page 25: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

25

Rango de Números

8 bits complemento a 2 +127 = 01111111 = -128 = 10000000 =

16 bits complemento a 2

Page 26: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

26

Conversión entre Longitudes

Números positivos con ceros a la izquierda +18 = 00010010 +18 = 00000000 00010010

Números negativos con unos a la izquierda -18 = 10010010 -18 = 11111111 10010010

Page 27: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

27

Representación de enteros de 4 bits

Page 28: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

28

Representación de Enteros

Ejercicios:Representar los siguientes números binarios con signo, utilizando complemento a uno y a dos:a) -13b) + 15c) -19

Page 29: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

29

Suma, Resta, División, Multiplicación

Operaciones aritméticas

Page 30: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

30

Suma y Resta

Suma binaria normal El bit de signo monitorea el overflow Hacer el complemento a dos del

substraendo y súmalo al minuendo Ejemplo. a - b = a + (-b)

Sólo necesitamos circuitería para la suma y el complemento

Page 31: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

31

Suma Binaria

Suma binaria La tabla de la adición binaria se representa :

0 + 0 = 00 + 1 = 11 + 0 = 11 + 1 = 0, Llevando 11 + 1 + 1 = 1, Llevando 1

La adición es conmutativa, es decir 1 + 0=1 y 0 + 1=1. Observe que, la operación se realiza exactamente igual que

en el sistema de numeración decimal teniendo en cuenta que si se excede la base se lleva como acarreo una unidad en la siguiente cifra de orden superior.

En la tabla se indica que 1 + 1 =10 y debe entenderse 10 en base binaria (102) que es el equivalente del 2 en el sistema decimal.

Page 32: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

32

Suma Binaria

Ejemplo :

• Sume la primera columna (la que está más a la derecha), en este caso: 1 + 1 = 0, con uno que se lleva. • El siguiente paso consiste en sumar: 1 + 1 + 0 = 0, con uno que se lleva.

• Sumamos 1 + 1 + 1 = 1, con 1 que se lleva.

• Luego 1 + 0= 1

Page 33: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

33

Suma Binaria

Ejemplos

11011.01 101111+ 101.1101 100111 10001.0001 + 11111

1110101

¿Los resultados son correctos?

Page 34: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

34

Suma Binaria

EjerciciosRealizar las operaciones siguientes.a) 100111 + 11101b) 1101.01 + 101.01c) 101001011001.1111 + 1111100.00011

Page 35: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

35

Sustracción Binaria

Recordar que la resta no es conmutativa y por tanto deben distinguirse los elementos que intervienen en la misma. El minuendo es el elemento del cual se resta el sustraendo.

Al igual que en el sistema de numeración decimal se tiene en cuenta que si se excede la base se lleva en la siguiente cifra una unidad de orden superior

Page 36: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

36

Sustracción Binaria

0 - 0 = 0 1 - 0 = 1 1 - 1 = 0 0 – 1= 1, prestando un 1 de la siguiente columna

En esta última se toma un 1 del número de la izquierda, es decir de la columna de orden inmediato superior para conformar la operación: 10 – 1= 1.

Si el minuendo es negativo, la operación se convierte en una adición con el resultado negativo.

Page 37: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

37

Sustracción Binaria

Ejemplos:

Observar que prestamos un 1 de la tercera columna debido a la diferencia de 0 – 1 en la segunda columna.

Page 38: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

38

Sustracción Binaria

Ejercicios:

Desarrollar las sustracciones:

a) 1101 - 110b) 111010.00100 - 1111.00001 c) 11101011 – 1011101

Page 39: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

39

Hardware para Suma y Resta

Page 40: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

40

Multiplicación Binaria

En la multiplicación los elementos se llaman multiplicando y multiplicador, y que el operador es el signo (*). La multiplicación binaria es conmutativa, asociativa y distributiva con relación a la suma.

0 * 0 = 0 0 * 1 = 0 1 * 0 = 0 1 * 1 = 1

Para multiplicar números que tienen parte entera y parte fraccionaria se opera igualmente como en el sistema decimal. Donde, para colocar el punto binario se cuenta la cantidad de cifras fraccionarias tanto en el multiplicando como en el multiplicador, y esta cantidad se separa en el producto o resultado.

Page 41: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

41

Multiplicación Binaria

Compleja Generación de productos parciales

uno para cada dígito del multiplicador Tener cuidado con donde ponemos cada

valor (en que columna) Sumar productos parciales

Page 42: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

42

Multiplicación

Ejemplos:

Ejercicios:Efectuar las multiplicaciones indicadas:

a) 100111 * 101 b) 11.101 * 1.01

Page 43: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

43

Ejemplo de Multiplicación

Page 44: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

50

División Binaria

En esta operación binaria los elementos son el dividendo y divisor. Como en la división decimal de enteros, un residuo es posible cuando un entero binario se divide por otro.

Procedimiento:

Se toma el mismo número de cifras en el dividendo que las que tiene el divisor, si no alcanza se toma una más.

Se resta, se baja la siguiente cifra y se sigue el mismo procedimiento

Page 45: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

52

División Binaria

Ejercicios: Efectuar las divisiones siguientes:

a) 1111 ÷ 101

b) b) 1011 ÷ 11

Page 46: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

54

División de números binarios sin signo

Page 47: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

55

Números Reales

Números con fracciones Podrían representarse en binario puro

¿Dónde está el punto binario? ¿Fijo?

Muy limitado ¿Moviéndolo?

¿Cómo sabemos dónde está?

Page 48: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

56

Punto Flotante

+/- .mantisa x El punto está fijo entre el bit de signo y el

cuerpo de la mantisa El exponente indica la posición del punto

Page 49: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

57

Ejemplos de Punto Flotante

Page 50: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

58

Signos para Punto Flotante

La mantisa se guarda en complemento a 2 Los exponentes son sesgados, un valor fijo

o sesgo se resta a ese campo para conseguir el exponente verdadero Ejemplo. Sesgo =128 Tenemos un campo exponente de 8 bits Rango de valores puros es de 0-255 Le restamos 128 para obtener el valor correcto Rango -128 a +127

Page 51: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

59

Normalización

Los números PF usualmente están normalizados

El exponente se ajusta que el bit más significativo de la mantisa es 1

Como siempre es 1 no se requiere almacenarlo La notación científica donde los números

están normalizados para tener un sólo dígito antes del punto decimal

Page 52: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

60

Rangos de PF

Para un número de 32 bits Exponente de 8 bits

Precisión El efecto de cambiar 1sb (bit menos

significativo) de la mantisa Aproximadamente 6 posiciones decimales

Page 53: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

61

Números Representables

Page 54: ARITMÉTICA PARA COMPUTADORAS ITCR – SSC I Semestre 2012.

62

FIN