0% encontró este documento útil (0 votos)
7 vistas49 páginas

Representación de Información en Computadores

El documento aborda la representación de la información en computadoras, incluyendo operaciones binarias básicas y diferentes convenios de representación para números enteros y reales. Se discuten métodos como signo y magnitud, complemento a 1 y 2, y exceso Z, así como el desbordamiento en operaciones aritméticas. También se menciona la representación de caracteres y el formato estándar IEEE 754 para números en coma flotante.

Cargado por

jchotoherrera
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
7 vistas49 páginas

Representación de Información en Computadores

El documento aborda la representación de la información en computadoras, incluyendo operaciones binarias básicas y diferentes convenios de representación para números enteros y reales. Se discuten métodos como signo y magnitud, complemento a 1 y 2, y exceso Z, así como el desbordamiento en operaciones aritméticas. También se menciona la representación de caracteres y el formato estándar IEEE 754 para números en coma flotante.

Cargado por

jchotoherrera
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Principios de computadores

Tema 5. REPRESENTACION DE LA
INFORMACION
Índice
PRC

• Introducción
• Operaciones binarias básicas
• Números enteros
– Convenio de representación: Signo y Magnitud
– Convenio de representación: Complemento a 1
– Convenio de representación: Complemento a 2
– Convenio de representación: Exceso Z
– Operaciones y Desbordamiento
• Representación de números reales
– Coma fija
– Coma flotante. Formato estándar IEEE 754
• Representación de números orientada a la E/S
• Representación de Caracteres

2
Introducción
FCO
Representación externa
La utilizada por las personas (sistema decimal, caracteres alfabéticos,...)
Representación interna
La utilizada por el ordenador (sistema binario, ASCII, ...)

Otro Representación • Espacio de almacenamiento


ordenador externa • Intercambio de información
3

Representación • Procesamiento de información


Humano
externa • Conversión de /a sistema
CPU
decimal
Memoria
• Precisión de la representación
Representación
interna
Representación
Dispositivo
externa
Introducción
FCO

3,1415926535897932384626433832795
4

ALUMNO: xxxxx
ASIGNATURA:
NOTA:
RGB pixel
I
Introducción
Ejemplo de diferentes significados.
FCO

00111001100011000000000011111111
Notacion 7143000377o
Representación compacta
0x398C00FF

Instrucción MIPS : xori $12, $12, 255 001110 01100 01100 0000000011111111
Bytes (sin signo): 57, 140, 0, 255 00111001 10001100 00000000 11111111
Bytes (con signo): 57, -116, 0, -1 00111001 10001100 00000000 11111111
5

Media palabra (con o sin signo ):14732, 255 0011100110001100 0000000011111111


Palabra (con o sin signo): 965476607
Real: 0,00026703623007052 0 01110011 00011000000000011111111
Carácter: 9, î, NULL,
RGB(140,0,255) I
Números naturales PRC

• Se denominan números naturales a aquellos


valores
números sin signo y sin parte fraccionaria
binario natural
• Los números naturales se representan en el
ordenador directamente mediante su correspondiente 0 0 0 0
valor en binario 0 0 1 1
0 1 0 2
– Es lo que se denomina “binario natural”
0 1 1 3
• El rango de representación viene dado por el 1 0 0 4
intervalo de números representables en un formato 1 0 1 5
– en este caso, formato = longitud en bits 1 1 0 6
1 1 1 7
– Con n bits se pueden representar los valores [0, 2n - 1]
• Es posible que al operar exista desbordamiento (el
resultado no es representable con n bits)

6
Operaciones binarias básicas con naturalesPRC

• Las operaciones aritméticas básicas (suma, resta,


multiplicación y división) utilizan en binario las mismas
reglas que en decimal, excepto lo referente a la base

• En la suma de dos o más bits:


– Hay acarreo (“carry”) cuando la suma de los operandos es igual o
superior a la base ( >= 2 en binario, y no >= 10)
Minuendo
• En la resta de dos o más bits: -sustraendo
– El préstamo (“borrow”) se calcula como base + minuendo -
sustraendo (2 + minuendo - sustraendo, y no 10 + minuendo -
sustraendo )

7
Números naturales PRC
Operaciones binarias básicas con naturales

• Como funciones combinacionales que son, se pueden


formalizar en una tabla de verdad
• Suma de dos bits
A B Suma Acarreo
0+0= 0
0+1= 1 0 0 0 0 Al circuito correspondiente a
1+0= 1 0 1 1 0 esta tabla de verdad se le
1 + 1 = 10 (acarreo=1) 1 0 1 0 conoce como semisumador o
1 1 0 1 ”Half Adder” (HA):
S = A  B, Acarreo = A·B
• Resta de dos bits I. Sólo hasta que
se vea el tema 3
0-0=0 A B Resta Préstamo
0 - 1 = 1 (y 1 de préstamo) 0 0 0 0
1-0=1 0 1 1 1
1-1=0 1 0 1 0
8 1 1 0 0
Números naturales PRC
Operaciones binarias básicas con naturales

• Para sumar dos o más números de N bits,


 Suma de dos bits: El acarreo 0 1 1 0 0 1 0 1
generado en una columna es Sumandos 0 0 1 1 1 1 0 1
un bit más a sumar en la
columna siguiente Resultados Sumas
parciales 0 1 0 1 1 0
intermedios
acarreos 1 1 1 1 1 1

1 0 1 0 0 0 1 0
 Resta de dos bits: El préstamo 0 1 0 0 0 1 0 1
generado en una columna es Operandos
un bit más a restar en la 0 0 0 1 1 1 0 1
columna siguiente Resultados Restas
parciales 1 0 1
intermedios
préstamos 1 1 1

0 0 1 0 10 0 0
9
Números naturales PRC
Desbordamiento en las operaciones

• Desbordamiento
– Ocurre cuando el resultado de una operación no es
representable en el formato utilizado (queda fuera del rango
de representación)
• Puede ocurrir en cualquier convenio de representación
• Surge por la necesidad de utilizar en el computador un tamaño máximo para
almacenar los valores de resultado de las operaciones
• Es una condición o adjetivo sobre el valor del resultado (indica que la
secuencia de bits calculada como resultado no es válida)
– Flag o bandera de desbordamiento (generalmente llamado V
ó OV):
• Salida de un circuito aritmético para indicar la situación de desbordamiento
en la operación

10
Números naturales PRC
Desbordamiento en las operaciones

• Desbordamiento en números naturales (no hay signo)


– Ocurre cuando hay acarreo en la última etapa, indicando que sería
necesario al menos un bit más para representar el resultado
– Expresión algebraica del flag, V = Cn-1

11
Números naturales PRC
Desbordamiento en las operaciones con Naturales

• Ejemplo 44 101100 44 101100


10 001010 24 011000
54 0110110 68 1000100
No es
V=0 representable
• Ejercicios V = 1 con 6 bits
– Sumar 1011100012 y 0011101102
– Restar 1011100012 y 0011101102 Sumar 1011100012,
0011101102 y 0110011002
1 0 1 1 1 0 0 0 1
0 0 1 1 1 0 1 1 0 1 0 1 1 1 0 0 0 1
(V=0) 1 1 1 1 0 0 1 1 1 0 0 1 1 1 0 1 1 0
0 1 1 0 0 1 1 0 0
1 0 1 1 1 0 0 0 1
0 0 1 1 1 0 1 1 0 1 0 1 0 1 1 0 0 1 1
(V=0)
12 0 1 1 1 1 1 0 1 1 (V=1)
Números naturales PRC
Operaciones Binarias Básicas

• Multiplicación
– Al multiplicar dos números de n y m bits respectivamente, el
resultado siempre podrá representarse con un máximo de n+m bits
23 1 0 1 1 1 1 0 0 1 1
7 0 0 1 1 1 1 0 1 0 1
161
1 0 1 1 1 1 0 0 1 1
1 0 1 1 1 1 0 0 1 1
1 0 1 1 1 1 0 0 1 1
0 0 0 0 0 1 1 0 0 0 1 1 1 1
0 0 0 0 0 1 0 0 0 1
0 1 0 1 0 0 0 0 1 1 1 1 0 1
= 128+32+1 = 16110
1 0 0 0 1
1 0 0 0 1 I
1 0 0 0 1
1 0 0 0 1
13 1 1 1 1 0 1 1 0 1
Números naturales PRC
Operaciones Binarias Básicas

• División
– El algoritmo de división es el mismo que en decimal, excepto
que cuando el dígito del cociente no es cero, sólo puede ser
un 1 (es decir, si cabe el dígito del cociente es seguro un 1)
cuando en decimal hay que probar entre 1 y 9
23 7 1 0 1 1 1 1 1 1 1 0 1 1 1 1 0 1
2 3 1 1 1 0 1 1 = 310 1 0 1 10 0
No cabe 0 0 0
0 0 0 1
1 0 1 1 1 0 1
1 1 1 No cabe
0 1 0 0
0 0 0 1 1
1 0 1
1 0 0 1 No cabe I
1 1 1
14
0 0 1 0 = 210
Números naturales PRC
Operaciones Binarias Básicas

• Complemento a 1 de un número X de n bits (sin signo)


– Definición: Ca1(X) = 2n - X - 1
– Se puede calcular también invirtiendo los bits de X

• Complemento a 2 de un número X de n bits (sin signo)


– Definición: Ca2(X) = 2n - X
– Se puede calcular también invirtiendo los bits de X y sumando 1,
– y también como Ca2(X) = Ca1(X) + 1

• Los complementos son operaciones reversibles,


– Ca1( Ca1(X) ) = X
• Ca1( Ca1(X) ) = 2n - ( 2n - X - 1) - 1 = 2n - 2n + X + 1 - 1 = X
– Ca2( Ca2(X) ) = X
• Ca2( Ca2(X) ) = 2n - ( 2n - X) = 2n - 2n + X = X

15
Números naturales PRC
Operaciones Binarias Básicas

• Ejercicios
Ca1(111000101) = 1000000000 - 1 - 111000101 =
= 0111111111 - 111000101 =
= 000111010
Ca1(000111010) = 1000000000 - 1 - 000111010 =
= 0111111111 - 000111010 =
= 111000101

Ca1(111000101) = 000111010
(invirtiendo los bits)
Ca1(000111010) = 111000101
(invirtiendo los bits)

16
Números naturales PRC
Operaciones Binarias Básicas

• Ejercicios
1000000000 - 111000101 =
2n-X
= 000111011
Ca2(111000101)
Ca1(X)+1 000111010 + 1 = 000111011

1000000000 - 000111011 =
2n-X
= 111000101
Ca2(000111011)
Ca1(X)+1 111000100 + 1 = 111000101

17
PRC
Números enteros
• Números enteros
– Números con signo pero sin parte fraccionaria
• Problema de representación
– Al intentar almacenar un número entero en la memoria del
ordenador, éste no almacena signos como “+” o “-”, sólo bits
• Solución
– Definir convenios de representación, reglas arbitrarias que nos
permitan almacenar valores tanto positivos como negativos
utilizando únicamente secuencias de 1s y 0s
• Extensión de signo
– Capacidad de ampliar de forma sencilla (sin realizar operaciones
aritméticas) el número de bits utilizado para representar una
determinada cantidad y que mantenga el criterio de
representación utilizado

18
PRC
Números enteros
• Criterio 1: Signo y Magnitud
– Se reserva el bit MSB para representar el signo del número
• MSB = 0 para los números positivos
• MSB = 1 para los números negativos
– El resto de bits representa el valor absoluto en binario natural
– Rango de representación simétrico [- (2n-1-1), + 2n-1-1]
– Existen dos ceros, uno “positivo” y otro “negativo”
– Antes de sumar o restar hay que analizar el signo de los
operandos

S. y Mag. Decimal S. y Mag. Decimal


0 000…000 +0 1 000…000 -0
0 000…001 +1 1 000…001 -1
0 000…010 +2 1 000…010 -2
0 000…011 +3 1 000…011 -3
… … … …
0 111…110 +(2n-1 - 2) 1 111…110 -(2n-1 - 2)
0 111…111 +(2 n-1 - 1) 1 111…111 -(2 n-1 - 1)
19
PRC
Números enteros
• Signo y Magnitud (cont.)
– Se puede hacer extensión de signo sin más que añadir los ceros
que sean necesarios a la izquierda de la magnitud, manteniendo
el bit de signo como el MSB
-3 => 1 11 +3 => 0 11
1 011 0 011
1 0011 0 0011
1 00011 0 00011
• Ejercicio
– Representar -20 y +20 en Signo y Magnitud utilizando 6 bits, 7 bits
y 8 bits

20
PRC
Números enteros
• Criterio 2: Representación utilizando complemento a 1
– No hay que confundir este convenio de representación
con la operación matemática Ca1
– Utiliza dos métodos diferentes, en función del signo del número
• Los positivos se representan por su valor absoluto, en binario natural
• Los negativos se representan por el Ca1(valor absoluto)
– Rango de representación simétrico [- (2n-1-1), + 2n-1-1]
– Existen dos ceros, uno “positivo” y otro “negativo”
Compl. A 1 Decimal Compl. A 1 Decimal
0000…000 +0 1000…000 -(2n-1 - 1)
0000…001 +1 1000…001 -(2 n-1 - 2)
0000…010 +2 … …
0000…011 +3 1111…100 -3
… … 1111…101 -2
0111…110 +(2n-1 - 2) 1111…110 -1
0111…111 +(2 n-1 - 1) 1111…111 -0
21
PRC
Números enteros
• Complemento a 1 (cont.)
– En la representación resultante, el bit MSB, a pesar de ser parte
integral de la cantidad representada, también indica el signo
• MSB = 0 para los números positivos (coincide con la representación en Signo y
Magnitud)
• MSB = 1 para los números negativos (aunque la representación no coincide con
Signo y Magnitud)
– Para obtener la representación del resultado de una operación de
suma o resta utilizando este mismo convenio de representación
hay que realizar múltiples ajustes, por lo que no se utiliza
– Es posible realizar extensión de signo, replicando el bit de signo
-2 => 101 +2 => 010
1101 0010
11101 00010
• Ejercicio 111101 000010
– Representar -20 y +20 en Complemento a 1 utilizando 6, 7 y 8 bits
22
PRC
Números enteros
• Criterio 3: Complemento a 2
– No hay que confundir este convenio de representación
con la operación matemática Ca2
– Utiliza dos métodos diferentes, en función del signo del número
• Los positivos se representan por su valor absoluto, en binario natural
• Los negativos se representan por el Ca2(valor absoluto)
– Rango de representación asimétrico [- 2n-1, + 2n-1-1]
– Existe un único cero
Compl. A 2 Decimal Compl. A 2 Decimal
0000…000 +0 1000…000 -2n-1
0000…001 +1 1000…001 -(2n-1 - 1)
0000…010 +2 … …
0000…011 +3 1111…100 -4
… … 1111…101 -3
0111…110 +(2n-1 - 2) 1111…110 -2
0111…111 +(2 n-1 - 1) 1111…111 -1
23
PRC
Números enteros
• Complemento a 2 (cont.)
– En la representación resultante, el bit MSB también indica el signo
• MSB=0 para los números positivos (coincide con SyM y Ca1)
• MSB=1 para los números negativos (aunque su representación no coincide ni
con SyM ni con Ca1)
– Las operaciones de suma y resta no necesitan realizar ajustes
para obtener el resultado de la operación representado según
este convenio de representación. Esto hace que sea el convenio
más utilizado cuando se trata de operar con números enteros
– Es posible realizar extensión de signo, replicando el bit de signo
-2 => 110 +2 => 010
1110 0010
11110 00010
• Ejercicio 111110 000010
– Representar -20 y +20 en Complemento a 2 utilizando 6, 7 y 8 bits
24
PRC
Números enteros
• Sumas y restas en Ca2
– Sean A y B dos números enteros (positivos o negativos) representados
según el convenio de Ca2
– Para calcular R=A+B y obtener R en el convenio de representación Ca2,
realizar una suma binaria y despreciar el acarreo final
– Para calcular R=A-B y obtener R en el convenio de representación Ca2,
realizar la suma binaria A + Ca2(B) y despreciar el acarreo final
A - B = A + (-B) = A + Ca2(B)
• Ejercicio
– A=-20, B=+10. Calcular A+B, A-B y B-A utilizando 6 bits

-20 101100 -20 101100


+10 001010 +10 Ca2(001010) 110110
-10 0 110110 -30 1 100010
+10 001010
-20 Ca2(101100) 010100
25
+30 0 011110
Números enteros
Desbordamiento en las operaciones en Ca2
PRC

• Desbordamiento al operar con números en Ca2


– Ocurre cuando el signo del resultado no es coherente con los
signos de los operandos (resultado negativo al sumar dos
positivos o resultado positivo al sumar dos negativos)
Casos posibles
Cn-1 Cn-2 …
An-1 Bn-1 Cn-2 Cn-1 Rn-1 An-1 An-2 … A0
0 0 0 0 0 A y B >= 0 Bn-1 Bn-2 … B0
0 0 1 0 1 Desb. si R < 0 Cn-1 Rn-1 Rn-2 … R0
0 1 0 0 1
0 1 1 1 0 A>=0 y B<0 o viceversa
1 0 0 0 1 Desbordamiento imposible
1 0 1 1 0 I
1 1 0 1 0 A y B < 0
1 1 1 1 1 Desbordamiento si R>=0

26 V = Cn-1  Cn-2 Importante!


Números enteros
Desbordamiento en las operaciones en Ca2
PRC

• Desbordamiento al operar con números en Ca2. Ejemplos


– Sumar y restar +17 y +16 con 6 bits
– Sumar y restar -17 y -16 con 6 bits
V=1 V=0
010000 110000
+17 010001 +17 010001
+16 010000 +16 Ca2(010000) 110000
+33 0100001 +01 1000001

R=-31??? R=+1 
V=1 V=0
100000 000000
-17 101111 -17 101111
-16 110000 -16 Ca2(110000) 010000
-33 1011111 -01 0111111

R=+31??? R=-1 

27
PRC
Números enteros
• Criterio 4: Exceso Z
– Se escoge un valor arbitrario denominado exceso (Z). El binario
natural de Z representará el cero
– Cualquier entero A se representa por el binario natural de A+Z.
Eso implica que A+Z >= 0 para poder representar en binario
natural
– Rango de representación asimétrico [- Z, + 2n - 1 - Z]
– Cada valor de Z define un rango de representación diferente
– Existe un único cero
Exceso 2n-1-1 Decimal Exceso 2n-1-1 Decimal
0000…000 -(2n-1 - 1) 1000…000 +1
0000…001 n-1
-(2n-1 - 2) 1000…001 +2
0000…010 -(2n-1 - 3) … …
0000…011 -(2 - 4) 1111…100 +(2n-1 - 3)
… … 1111…101 +(2n-1 - 2)
0111…110 -1 1111…110 +(2 n-1 - 1)
0111…111 0 1111…111 +2 n-1

28
PRC
Números enteros
• Exceso Z (cont.)
– En la representación resultante, el bit MSB no indica el signo, ya
que la representación depende del valor de Z
– A la hora de sumar y restar, el resultado no lleva incorporado el
exceso correcto y hay que ajustarlo:

A A+Z A A+Z
B B+Z B B+Z
A+B A+B+2Z A-B A-B
Z Z
A+B+Z (A-B)+Z
– No es posible realizar extensión de signo sin realizar operaciones
matemáticas, ya que habitualmente el valor del exceso depende
del tamaño de bits disponibles. Por ejemplo, Z = 2n-1-1
• Ejercicio
– Representar -20 y +20 en Exceso 2n-1-1 utilizando n=6, 7 y 8 bits

29
Números enteros PRC

• Ejemplos (n=6 bits)


Decimal SyM Ca1 Ca2 Exceso 31
0 0 00000 000000 000000 011111
+1 0 00001 000001 000001 100000
-1 1 00001 111110 111111 011110
+5 0 00101 000101 000101 100100
-5 1 00101 111010 111011 011010
+31 0 11111 011111 011111 111110
-31 1 11111 100000 100001 000000
+32 ---- ---- ---- 111111
-32 ---- ---- 100000 ----
+33 ---- ---- ---- ----
-33 ---- ---- ---- ----
rango [-31,+31] [-31,+31] [-32,+31] [-31,+32]

30
PRC
Números enteros
• Resumen
Signo y
Compl. a 1 Compl. a 2 Exceso 2n-1-1
Magnitud

Rango [-(2n-1-1), + 2n-1-1] [-(2n-1-1), + 2n-1-1] [-2n-1, + 2n-1-1] [-(2n-1-1), + 2n-1]


Ext.
Sí (con cuidado) Sí Sí No
signo
Dos repr. para el Dos repr. para el Sumas y restas
cero cero complicadas
Incon-
venientes Sumas y restas
complicadas

31
PRC
Representación de reales
COMA FIJA
• Un número real R se representa mediante dos campos de
longitud fija, uno para la parte entera y otro para la parte
fraccionaria, separados mediante la coma decimal
– R = en-1 en-2 … e1 e0 , f-1 f-2 … f-p+1 f-p
– Se dedican n bits para la parte entera y p para la fraccionaria
• La aritmética coincide con la aritmética entera
– Utilizando 3 bits para la parte entera y otros 3 para la parte
fraccionaria, realizar el cálculo 000,12510  000,00110
 000,12510  000,00110 = 000,00012510
 Ajustando el resultado al formato: 000,00010

32
PRC
Representación de reales (ii)
COMA FLOTANTE
• Un número real R se representa mediante la expresión: R = M  BE
– M es la mantisa.
Se asignan q bits al campo de mantisa: mq-1 mq-2 … m1 m0
Es un número fraccionario representado en coma fija, con signo y generalmente
representado en signo y magnitud: S: (mq-1) Mg: (mq-2 … m0)
– B es la base de la potencia. Generalmente es 2.
– E es el exponente.
Se asignan p bits al campo de exponente: ep-1 ep-2 … e1 e0
Es un número entero, generalmente representado en exceso 2p-1 - 1

• La representación en la memoria del ordenador suele ser:


R = M  BE  R = (M; B; E)  R = (M; E)  S E M
• La aritmética es más compleja que la aritmética entera
– Existen circuitos específicos (coprocesadores matemáticos)

33
PRC
Representación de reales: coma flotante (iii)
• Normalización de la mantisa
– Surge para no perder bits significativos (1) desperdiciando espacio para
almacenar bits no significativos (0).
Ejemplo: almacenar la mantisa -- 0,00010001 con un formato de 5 bits

1 0 0 0 0
S M
– Al normalizar la representación de la mantisa se asegura que se almacenan
el mayor número posible de unos
– El primer bit significativo se coloca alrededor de la coma. Para mover la coma
habrá que modificar el valor del exponente
Ejemplo: mantisa normalizada = --1,0001 x 2 --4
1 1 0 0 0
– Si el primer bit significativo se coloca a la derecha de la coma, los números
tendrán la forma 0,1xx…x. Si se coloca a la izquierda, tendrán la forma
1,xx…x
34
PRC
Representación de reales: coma flotante (iv)
• Técnica del bit implícito
– Dado que se asegura la posición del primer bit
significativo, no hace falta almacenarlo (aunque sí tenerlo
en cuenta en las operaciones)

Ejemplo: mantisa normalizada = -- 1,0001 x 2 -4

Representación en memoria
con la técnica de bit implícito:
1 0 0 0 1
S M

¡¡ No se almacena por ser siempre 1 !!

35
PRC
Representación de reales: estándar ieee754
• Formato estándar IEEE 754
– Surge para facilitar el trasvase de información entre distintas máquinas
– Versiones
Precisión Total bits Signo Exponente Magnitud

Simple** 32 1 8 23*

Doble** 64 1 11 52*
*Existe
un bit adicional que no se almacena (bit implícito)
– Características **También hay versiones de 16, 80, 128 y 256 bits
• La mantisa se normaliza en la forma 1,xx…x. Se representa en signo y magnitud y se
utiliza la técnica del bit implícito
• El exponente está en exceso 2n-1-1 (127 ó 1023).
• El orden de los campos es S, E y M. La base B es 2
• Los números “normales” tienen la forma: 1,M  2E-127
• Existen números “denormalizados” que tienen la forma 0,M  2-126

36
PRC
Representación de reales: estándar ieee754
Ejemplo. Represéntese el número - 81,375 en formato IEEE de simple
precisión (formato normalizado)
Parte entera: 8110 = 10100012 Bit implícito que
no se almacena
Parte decimal: 0,37510 = 0112

Mantisa = - 1010001,0112 --> Mantisanorm = -1,0100010112x2+6


Exponente = 610, que en exceso 127 (Z = 127)
se representa como 6 + Z = 13310 = 10000101

1 bit 8 bits 23 bits


1 10000101 01000101100000000000000
31 30 2322 0
37
PRC
Representación de reales: ieee754 (iii)
• Ejercicios
– La representación de 5,6875 en IEEE 754 de simple
precisión es
+5,687510 = 101,10112 = 101,1011  20 = 1,011011  22, y ahora:

S E M

0 10000001 01101100000000000000000

 Si la secuencia de bits (en hexadecimal) es C0B60000,


se está representando el valor: -5,6875

S E M

1 10000001 01101100000000000000000
38
PRC
Representación de reales: ieee754 (iv)
• Casos especiales del formato estándar
– Si E = 00…0 y M = 0, se está representando el valor 0, que no es
representable utilizando el formato normalizado

– Si E = 00…0 y M  0, se está representando un valor muy pequeño en


formato denormalizado: 0,M x 2 -126

– Si E = 11…1 y M = 0, se está indicando que el resultado de la operación no


es representable. Será + o - según el signo

– Si E = 11…1 y M  0, se está indicando que el resultado de una operación


no tiene sentido (ejemplo, 00). Este tipo de resultados se conocen como
NaN (“Not a Number”)

• Las secuencias 00…000 y 11…111 del exponente no sirven para


representar números “normales”

39
PRC
Representación de reales: ieee754 (v)
• Rango de representación
– Determinado principalmente por el número de bits asignados a E

• Precisión: distancia entre dos valores representables


consecutivos
– Determinado principalmente por el número de bits asignados a M

• Posibles desbordamientos al representar valores


– Overflow. Cuando el número está tan alejado del 0 (valor
absoluto muy grande) que no se puede representar
– Underflow. Cuando el número está tan cercano al 0 (valor
absoluto muy pequeño) que no se puede representar

40
PRC
Representación de reales: ieee754 (vi)
• Rango de representación de los números normalizados
– Del rango original [-127, +128] (o [-1023, +1024]) del exponente, las
secuencias binarias 00…000 y 11…111 son indicación de casos
especiales, y no sirven para representar números normales
– Por tanto, el rango disponible es [-126, +127] (o [-1022, +1023])

– En valor absoluto, el número más pequeño representable en simple


precisión es
1,00…002 x 2-126

– En valor absoluto, el número más grande representable en simple


precisión es
1,11…1112 x 2+127  1,0 x 2+128

41
PRC
Representación de reales: ieee754 (vii)
• Rango de representación de los números denormalizados
– Los números denormalizados ofrecen otro conjunto de número
representables, con el valor del exponente fijo: -126 (o -1022)

– En valor absoluto, el número más pequeño en simple prec. es


0,00…0012 x 2-126 = 1,0 x 2-126-23 = 1,0 x 2-149

– En valor absoluto, el número más grande en simple prec. es


0,11…1112 x 2-126  1,0 x 2-126
que coincide con el inicio del rango de los número normalizados

• Rango completo en simple precisión I

42

0 2 149
,2 126
   2 126
,2 128
   2 149
,2 128

Representación orientada a E/S PRC

• Representación BCD (Binary Coded Decimal)


– Representación utilizada para facilitar las operaciones de Entrada/Salida

Decimal BCD
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001
Representación de caracteres PRC

• Son caracteres
– Las letras (“a”, …, ”z”, “A”, …, “Z”)
– Los dígitos (“0”, …, “9”)
– Los signos de puntuación (“.”, “,”, “;”, …)
– Y los símbolos especiales (“*”, “&”, “$”, …)
• Para representar caracteres se asignan códigos numéricos a cada uno
mediante una tabla
• El ordenador siempre trabaja con los códigos, nunca con los símbolos
gráficos
• Las características de una representación son
– Longitud en bits de los códigos
– Número de caracteres representable
– La asignación de códigos a cada carácter (la tabla)
Representación de caracteres PRC

• A.S.C.I.I. (American Standard Code for Information Interchange)


– Es el más utilizado hoy en día
– Longitud fija, igual para todos los códigos
– ASCII original. Longitud de código de de 7 bits
– ASCII extendido. Ampliación para caracteres internacionales,
con una longitud de código de 8 bits

• E.B.C.D.I.C. (Extended Binary Coded Decimal Interchange Code)


– Surgido en 1964 con el sistema IBM S360
– Longitud fija de 8 bits
– Sólo se usa en algunos sistemas mainframe
Representación de caracteres PRC

• Tabla ASCII
de 7 bits
Representación de caracteres PRC

• UNICODE ([Link])
– Estándar de codificación para el tratamiento, transmisión y
visualización de textos
– Propiedades: Universalidad, Uniformidad, Unicidad.
– Mantenido por UTC (Unicode Technical Committee), y
relacionado con ISO/IEC, y empresas como Microsoft,
Google, Apple, SAP, Oracle o Yahoo entre otras.
– Gran tabla que permite asignar un código a más de 100000
símbolos que incluyen todos los alfabetos europeos,
ideagramas chinos, japoneses y coreanos, con más de un
millar de símbolos locales (matemáticos, técnicos, musicales,
monedas, ... )
Representación de caracteres PRC

• UNICODE ([Link]/charts)
– El elemento básico del estándar unicode es el carácter. Se
identifican mediante un número o punto de código, y su
nombre o descripción.
• El espacio para códigos es de 0x10FFFF, es decir, 1.114.111
posiciones posibles.
• Se representan con su notación hexadecimal y el prefijo U+
Representación de caracteres PRC

• UNICODE ([Link]/charts)
• ISO 8859-1 Europa Occidental
• ISO 8859-13 báltico y polaco
• ISO 8859-15. Al -1 se le añade el símbolo € y algunos otros.
• UTF-8 (Unicode Transformation Format). Codificación orientada a byte
con símbolos de longitud variable
• UTF-16. Codificación de 16 bits de longitud variable optmizada
para la representación del plano básico multilingue (BMP)
• UTF-32. Codificación fija de 32 bits.

También podría gustarte