Sesion 1 - 3

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 5

2.3.

Representación de datos numéricos

Dos posibilidades de representación:

• Como secuencias de caracteres  no adecuada para cálculos


matemáticos.
Números Representación en ASCII Resultado
(caracteres) en ASCII
255 0011 0010 0011 0101 0011 0101
42 0011 0100 0011 0010
Suma  0011 0010 0110 1001 0110 0111  2ig

• De alguna forma basada en los sistemas de numeración matemáticos.


Números Representación en base 2 Resultado decimal
255 1111 1111
42 0010 1010
Suma  1 0010 1001  297

Cálculos matemáticos correctos


ObjetivoMenor nº de bits para representar el número

número número
Transformaciones: (cadena de (representación
caracteres) binaria)

Tipos de datos numéricos y representaciones diferentes:

Tipo de dato numérico Representación


Enteros Binaria • Enteros sin signo
• Enteros con signo:
• Signo y magnitud
• Complemento a 1
• Complemento a 2
• Sesgada (en exceso)
BCD • Natural
• Aiken
• Exceso en 3
Reales Mantisa y exponente

1
n = 8 bits
Datos enteros: Binario Decimal
• Representación binaria: 0000 0000 0
• Enteros sin signo: 0000 0001 1
0000 0010 2
n bits  2n números
..... .....
Rango: [0,2n-1] 1111 1111 255 n = 8 bits
• Enteros con signo: Binario Decimal
• Enteros con signo y magnitud: 1111 1111 -127
bit mas significativo: .... ....
signo (0=positivo, 1=negativo) 0111 1111 +127
2 representaciones para
resto de bits: valor absoluto número el cero
Rango: [-(2n-1-1), 2n-1-1]
• Enteros en complemento a 1:
Primer bit: signo (0=positivo, 1=negativo)
Resto de bits: número positivo: valor absoluto del número
número negativo: complemento a 1 de valor absoluto
Rango: [-(2n-1-1), 2n-1-1]
• Enteros en complemento a 2: (la más usual)
Primer bit: signo (0=positivo, 1=negativo)
Resto de bits: número positivo: valor absoluto del número
número negativo: complemento a 2 de valor absoluto
Rango: [-2n-1, 2n-1-1]
• Representación sesgada (desplazada o en exceso):
Un número N se representa como N+S con S=2n-1
Rango de valores: [-2n-1, 2n-1-1]
Nº decimal Tipo de representación (n=4 bits)
Signo y magnitud Complemento a 1 Complemento a 2 Sesgado
+7 0111 0111 0111 1111 15
+6 0110 0110 0110 1110 14
+5 0101 0101 0101 1101 13
+4 0100 0100 0100 1100 12
+3 0011 0011 0011 1011 11
+2 0010 0010 0010 1010 10
+1 0001 0001 0001 1001 9
+0 0000 0000 0000 1000 8
-0 1000 1111
-1 1001 1110 1111 0111 7
-2 1010 1101 1110 0110 6
-3 1011 1100 1101 0101 5
-4 1100 1011 1100 0100 4
-5 1101 1010 1011 0011 3
-6 1110 1001 1010 0010 2
-7 1111 1000 1001 0001 1
-8 1000 0000 0

2
Problemas de los enteros  Desbordamiento: el resultado de una operación se
sale de los límites de representación (depende de la longitud de la palabra y del
tipo de representación)

• Representación BCD (Decimal Codificado en Binario):


4 bits para representar las cifras: 0 1 2 3 4 5 6 7 8 9
1 byte  2 dígitos decimales
Ejemplo: 9 8 3 2 5
1001 1000 0011 0010 0101

Ejercicio 1.1.14 ¿Cuáles serán los números decimales enteros correspondientes


a los números siguientes: 10101110; 01111011; 10000000? Considerar las
siguientes representaciones:
• Sin signo.
• Signo y magnitud.
• Complemento a 1.
• Complemento a 2.
• Sesgada.
• BCD.
Soluciones:
1010 1110 0111 1011 1000 0000
Sin signo 174 123 128
Signo y magnitud -46 +123 -0
Complemento a 1 -81 +123 -127
Complemento a 2 -82 +123 -128
Desplazada 46 -5 0
BCD No válida No válida 80

Datos reales: (normalización IEEE 754) N=M*BE


Notación exponencial, científica o en coma flotante: B: base
Ejemplo: E: exponente
13257.3285 = 1.32573285 * 104 = 132573285 * 10-4 =... M: mantisa

Representación normalizada: N  s e m

bits necesarios: n = 1 + ne + nm

• Base del exponente predeterminada (B=2)


3
• s: campo del signo: 0=positivo, 1=negativo
• e: campo del exponente: entero sesgado con S=2ne-1-1
e = S + E = 2ne-1 - 1 + E
• m: campo de la mantisa  número normalizado: el 1 más significativo
de la mantisa se encuentra en la posición 0  multiplicar/dividir por 2
para desplazar el punto decimal. Ejemplos de normalización:
N1 = 1001.1100110 * 2-5 = 1.0011100110 * 2-2
N2 = 0.000001101101 * 234 = 1.1011101 * 228
Almacenamiento encapsulado  almacenar solo la parte fraccionaria
de la mantisa (se ahorra 1 bit de espacio)

Ejemplo: n=16 bits ne=8 ¿N = (1001111100011110)representación interna?


signo = 1  número negativo S=127
exponente = (00111110)2 = (62)10  E = e – S = (-65)10
mantisa = (1,0011110)2 = 1 + 2-3 +2-4 + 2-5 + 2-6 = (1.234375)10
número = - M * 2E = -1.234375 * 2-65 = -3.345780142 * 10-20
Caso normal: (número normalizado)
• 0<e<2ne-1  S=2ne-1-1  E=e-S  N=(-1)signo*2E*1.m
Casos especiales:
• e=0 m≠0  mantisa denormalizada  S=2ne-1-2  E=e-S
N=(-1)signo*2-S*0.m
• e=0 m=0 N=0
• e=2ne-1  m=0  N=±∞ (INF)
m≠0  no es un número (NaN)

Problemas de los reales:


• Representación aproximada  cálculos no exactos (redondeos)
• Precisión y valores límite:
Precisión
Simple Doble
n 32 64
ne 8 11
nm 23 52
38
Nmax 3.4028 * 10 1.7977 * 10308
Rango Nmin(Normalizado) 1.1755 * 10-38 2.2251 * 10-308
Nmin(Denormalizado) 1.4013 * 10-45 4.9407 * 10-324
desbordamiento agotamiento desbordamiento
N<0 N>0
-∞ +∞
-Nmax -Nmin Nmin
0 Nmax
4
IEEE-754 Simple precisión seeeeeeeemmmmmmmmmmmmmmmmmmmmmmm
1 8 23
e=25510(111111112) y m≠0 ±NaN
e=25510(111111112) y m=0 ±∞
0<e<25510 (-1)S*2(e-127)*1.m
e=010(000000002) y m≠0 (-1)S*2-126*0.m
e=010(000000002) y m=0 ±0
IEEE-754 Doble precisión seeeeeeeeeeemmmmmmm...mmmmmmmmmmmm
1 11 52
e=204710(111111111112) y m≠0 ±NaN
e=204710(111111111112) y m=0 ±∞
0<e<204710 (-1)S*2(e-1023)*1.m
e=010(000000000002) y m≠0 (-1)S*2-1022*0.m
e=010(000000000002) y m=0 ±0

Ejercicio 1.1.16 Suponiendo una computadora que utiliza el estándar IEEE


754, obtener las representaciones internas en simple precisión de los siguientes
números: 7; -7.5 * 2-140

Soluciones:
7  40E0 0000
-140
-7.5 * 2  8000 0F00

Ejercicio 1.1.17 Obtener los números reales máximos y mínimos (normalizados


y de-normalizados) representables en IEEE 754, doble precisión.

Soluciones:
Máximo: 1.7977 * 10308
Mínimo: Normalizado: 2.2251 * 10-308
De-normalizado: 4.9407 * 10-324

También podría gustarte