Академический Документы
Профессиональный Документы
Культура Документы
Fundamentos de Informtica Departamento de Ingeniera de Sistemas y Automtica. Escuela de Ingenieras Industriales. Universidad de Valladolid
ndice
1. 1 2. 3. 4. Sistemas de numeracin binario binario, octal y hexadecimal hexadecimal. Representacin de nmeros enteros. Representacin de nmeros reales. Representacin de caracteres.
Fundamentos de Informtica
Introduccin
La informacin es un conjunto de datos, datos cuyo significado depende del contexto. Su propsito puede ser el de reducir la incertidumbre o incrementar el conocimiento acerca de algo La representacin de la informacin estudia las distintas formas en que se puede comunicar y acceder a la informacin
Fundamentos de Informtica
Introduccin
Para la ejecucin de un programa, al ordenador debemos suministrarle dos tipos de informacin:
las instrucciones que forman el programa los datos con los que debe operar ese programa.
Fundamentos de Informtica
Introduccin
Cmo suministramos la informacin?
Utilizando un conjunto de smbolos, los caracteres:
Alfabticos (AZ,az) Numricos (09) Especiales (,:=) De control (fin de linea,tabulador) G fi Grficos, t l como iconos tales i
La comunicacin con el ordenador se realiza usando los caracteres que admiten sus dispositivos de E / S.
Fundamentos de Informtica
Introduccin
Cmo almacena informacin? el ordenador la
El ordenador tambin utiliza un conjunto de caracteres. La forma ms fiable y simple de almacenar la informacin es usar nicamente dos valores como caracteres (0 y 1). Estos caracteres se conocen como BIT (Binary digit). Un bit es la unidad de informacin mnima.
Fundamentos de Informtica Tema 1 - Representacin de la Informacin
Introduccin
La codificacin de la informacin
La Codificacin es una transformacin que representa los elementos de un conjunto mediante los de otro, de forma tal que a cada elemento del primer conjunto le corresponda un elemento distinto del segundo.
Ejemplo:
cdigo de provincia en las matrculas de los coches; NIA DNI
La existencia de dos conjuntos diferentes de caracteres, uno externo para el usuario y otro interno para el ordenador, ordenador hace necesario codificar los caracteres de un conjunto con los del otro. Son los llamados cdigos de E/S (por ejemplo el cdigo ACSII). Por otro lado, a nivel interno y para mejorar la eficiencia, la existencia de datos numricos de muy diferentes caractersticas (binarios, enteros, coma flotante), motiva la utilizacin de otras codificaciones, que constituyen los diferentes sistemas de numeracin.
Fundamentos de Informtica Tema 1 - Representacin de la Informacin
Sistemas de numeracin
Un sistema de numeracin es un conjunto de smbolos utilizado para representar cantidades, junto al conjunto de reglas que permiten construir nmeros vlidos. Aunque q el ms conocido y usado es el sistema de numeracin decimal, en los dispositivos informticos son ms utilizados el sistema octal, el hexadecimal y, sobre todo, el binario.
Fundamentos de Informtica
Sistemas de numeracin
Sistemas de numeracin posicional
El nmero de smbolos (cifras) permitidos en un sistema de numeracin posicional se conoce como base del sistema de numeracin. Por ejemplo en el sistema decimal la base es b=10. El conjunto de 10 smbolos es: {0,1,2,3,4,5,6,7,8,9} Un nmero se expresar mediante un conjunto de cifras, contribuyendo cada una de ellas con un valor dependiente de:
El valor que representa esa cifra La posicin que ocupe dentro del nmero
Fundamentos de Informtica
Sistemas de numeracin
Para construir un nmero N, con un nmero n de cifras enteras y un nmero k de cifras representando la parte fraccionaria, puede usarse con carcter general la siguiente frmula:
P Por ejemplo, j l el l nmero N N=789.3 789 3 en b base 10 ( (se representar 789.3|10) tiene como valor: 7x102 + 8x101 + 9x100 + 3x10-1 El polinomio que permite calcular el valor del nmero se denomina polinomio equivalente.
Fundamentos de Informtica Tema 1 - Representacin de la Informacin
10
Octal:
11
Fundamentos de Informtica
12
Fundamentos de Informtica
13
Fundamentos de Informtica
14
El valor de N est dado por un polinomio de potencias de b (desde bn hasta b0) con coeficientes menores que b (los ri y Cn). Es el polinomio equivalente!
Fundamentos de Informtica Tema 1 - Representacin de la Informacin
15
Fundamentos de Informtica
16
Fundamentos de Informtica
17
As, tras el primer producto se conoce el valor de a-1 Mediante productos sucesivos, se realiza luego el producto b x ((b x N) a-1)) y se obtiene a-2, etc. A diferencia del caso anterior de conversin de la parte entera, se tiene que definir un criterio de parada (por ejemplo, nmero mximo de cifras fraccionarias). En general, se comete un error de truncamiento, es decir, el valor representado no es el mismo que el original.
Fundamentos de Informtica Tema 1 - Representacin de la Informacin
18
Si se detiene ah el proceso se obtiene que N|2=0.1100 El valor obtenido es 2-1 + 2-2 = 0.5 + 0.25 = 0.75. Se ha cometido un error de truncamiento de 0.03
Fundamentos de Informtica Tema 1 - Representacin de la Informacin
19
Observad que: Los pi son tales que 0 pi7. Es decir, cualquiera de ellos se representa en binario con tres bits: cibiai = cix22 + bix21 + aix20 8 = 23. Cualquier potencia 8j = 23j El polinomio equivalente en potencias de 8 pasa a ser un polinomio equivalente en potencias de 2 (valor en binario del nmero N)
Fundamentos de Informtica Tema 1 - Representacin de la Informacin
20
10
Fundamentos de Informtica
21
00 0101110100,010101
En base 8 (octal)
000101110100,010101 00
En base 16 (hexadecimal)
4
22
Fundamentos de Informtica
11
3
En base 2 (binario)
5 , 2
Fundamentos de Informtica
23
24
12
Fundamentos de Informtica
25
Fundamentos de Informtica
26
13
Ejemplo: 6 +3
9
Fundamentos de Informtica
0 0 00 1 01 1
1 0 01 1 10 0
1 1 10 0 00 0
27
0 1 01
3
Fundamentos de Informtica
0 00 0
1 00 0
1 11 1
1
28
14
29
Fundamentos de Informtica
30
15
Fundamentos de Informtica
31
Fundamentos de Informtica
32
16
33
N bn 1 N
Complemento a la base b:
N bn - N
Puesto que en binario la base es 2, se conocen como complemento a 1 y complemento a 2 respectivamente.
Fundamentos de Informtica Tema 1 - Representacin de la Informacin
34
17
Fundamentos de Informtica
35
O bien
Sumndole 1 110011
36
18
37
Nmeros enteros negativos Bit de signo 1 seguido del: complemento a uno con n-1 bits. O bien, complemento a dos con n-1 bits.
Ejemplo: usando n = 8bits A = 13|10 = 0 0001101 -13|10 = 1 1110010 (comp. a uno) -13|10 = 1 1110011 (comp. a dos)
Fundamentos de Informtica
38
19
Se observa que el menor nmero de bits para representar 13|10 con signo es de 5 bits: 0 1101
Fundamentos de Informtica Tema 1 - Representacin de la Informacin
39
40
20
Fundamentos de Informtica
41
+ 7 = +(2n-1-1) +6 +5 +4 +3 +2 +1 0
Tema 1 - Representacin de la Informacin
42
21
Fundamentos de Informtica
43
44
22
11111111.11111000 00000000.00001000 = 8
Fundamentos de Informtica
11101100 -00010100|2
46
-20|10
23
47
Nmeros enteros.
Representacin en exceso (1)
Consiste en tomar el valor del nmero a representar p y sumarle un exceso k. A cada nmero se le suma el mismo valor y est en exceso por dicho valor. Tambin se denomina representacin sesgada (biased). Normalmente, ,yp para conseguir g q que el nmero de valores negativos y positivos sea similar, se escoge como exceso k= bn-1 (Exceso a bn-1) o k= bn-1-1
Fundamentos de Informtica
48
24
Nmeros enteros.
Representacin en exceso (2)
Si se trabaja por ejemplo con 8 bits, un posible exceso es: 27-1=127|10 De este modo la correspondencia ser
-127|10 -126|10 -1|10 0|10 +1|10 +127|10 +128|10 -127 + 127 = 0 -126 + 127 = 1 -1 + 127 = 126 0 + 127 = 127 +1 + 127 = 128 +127 + 127 = 254 +128 + 127 = 255 00000000|e127 00000001|e127 01111110|e127 01111111|e127 10000000|e127 11111110|e127 11111111|e127
Fundamentos de Informtica
49
Nmeros enteros.
Representacin en exceso (3)
El menor nmero que se podr representar se corresponde precisamente con el exceso que se elija. En el ejemplo, con n=8 se ha escogido 2(8-1)-1 = 127. El rango entonces va desde -127 hasta +128. Generalizando, y si se usa ese exceso, el rango va desde -(2(n-1)-1) hasta +2(n-1).
Fundamentos de Informtica
50
25
Nmeros enteros.
Representacin en exceso (4) Al sumar dos nmeros representados p en exceso se necesita corregir el resultado
A|e = A|10 + exc; B|e = B|10 + exc; A|e+B|e=A|10+exc+ B|10+exc = Suma|10 + 2exc;
Fundamentos de Informtica
51
Nmeros enteros.
Representacin en exceso (5) Si A y B son la representacin en exceso de los nmeros a y b, se cumple que
ab A B
Las representaciones de los nmeros conservan el orden
de los mismos. El resto de representaciones vistas no cumplen esta propiedad. Esto es til cuando se realizan comparaciones de nmeros.
Fundamentos de Informtica
52
26
Nmeros enteros.
Representacin en exceso (6)
Desventajas
Requiere de operaciones aritmticas intermedias para su obtencin, y de cambiar el nmero de bits, se deben actualizar dichas operaciones intermedias para reflejar el nuevo exceso. Posee rango asimtrico Permite operar p aritmticamente ( (aunque q hay y q que restar un exceso al resultado final). No hay empaquetacin del nmero: no hay que distinguir entre signo y significando, los n-bits son el nmero. Permite la comparacin directa entre nmeros
Fundamentos de Informtica Tema 1 - Representacin de la Informacin
Ventajas
53
54
27
55
Fundamentos de Informtica
56
28
Fundamentos de Informtica
57
58
29
Fundamentos de Informtica
59
1 bit de signo
nc bits exponente
(caracterstica)
nm bits mantisa
Fundamentos de Informtica
60
30
1 bit de signo
nc bits exponente
(caracterstica)
nm bits mantisa
El orden no es balad: permite que los algoritmos de comparacin entre nmeros enteros sean tambin vlidos para esta representacin de nmeros reales.
Fundamentos de Informtica Tema 1 - Representacin de la Informacin
61
62
31
63
Exponente
Se representa en exceso 2(nc-1)-1. Se pueden representar as exponentes desde -(2(nc-1)-1) hasta +2(nc-1). Simple precisin: exceso 127, 127 [-127,128] [ 127 128] Doble precisin: exceso 1023, [-1023,1024]
Mantisa
Se normaliza del modo 1,m. Es decir, el primer uno (bit ms significativo) del nmero positivo se sita a la izquierda de la coma. Se usa representacin en signo-magnitud.
Fundamentos de Informtica Tema 1 - Representacin de la Informacin
64
32
65
En simple precisin:
Exponente (caracterstica) = +3 +127 = +130|10
bit signo 0 8 bits (exponente) 10000010 23 bits (mantisa) 10100100000000000000000
Fundamentos de Informtica
66
33
Signo 0 Nmero positivo Exponente = +133|10 (caracterstica) -127(exceso) = +6 Mantisa (incluyendo el 1 implcito) 1.1101101000000000000000 x 26 = 1110110.1000000000000000 x 20= 1x 26+ 1x 25+ 1x 24+ 1x 22+ 1x 21+ 1x 2-1=+118.5
Fundamentos de Informtica Tema 1 - Representacin de la Informacin
67
68
34
Fundamentos de Informtica
69
70
35
Fundamentos de Informtica
71
Fundamentos de Informtica
72
36
Una vez obtenidos el exponente y la mantisa a representar se pueden dar diferentes casos. Para simple precisin: Exponente entre -126 y 127. El nmero se representa de la forma vista. Exponente entre -149 y -127. El nmero se representar desnormalizado. Exponente menor que -149. 149 Se representar como cero (con su signo). signo) Exponente mayor que 127. Se representar como infinito (con su signo). Lo anterior est relacionado con el rango y la representacin de casos especiales previstos en la norma.
Fundamentos de Informtica Tema 1 - Representacin de la Informacin
73
ln (N) 94 .90295534 ln ( 2 )
f=-0.90295534 f 0.90295534
MANTISA
74
37
00100000
1.069580197|10=1.00010001110100000000001
(Se toman 23 bits sin el 1 implcito)
bit signo 1
Fundamentos de Informtica
75
76
38
77
Exp mayor|10 = 11111110|2 - 127 = 254 127 = +127 Mant mayor|10 = 1. 11111|2 = 2 2-23=2 x (1-2-24) Mayor valor = 2 x (1-2-24) x (2+127)=(1-2-24) x 2+128 3.4x1038
Fundamentos de Informtica Tema 1 - Representacin de la Informacin
78
39
Exp menor|10 = 00000001|2 - 127 = 1 127 = -126 Mant menor|10 = 1.00000000000000000000000 = 20 (pues hay un 1 implcito) Menor valor normalizado = 20x 2-126 = 2-126 1.18x10-38
Fundamentos de Informtica Tema 1 - Representacin de la Informacin
79
80
40
Como ahora hay desnormalizacin Exp p = -126 Mant menor|10 = 0.00000000000000000000001 = 2-23 Menor valordesnormalizado = 2-23x 2-126 = 2-149 1.4x10-45
Fundamentos de Informtica
81
Doble precisin:
- Desde: 2-1023 1.11x10-308 hasta (1-2-53) x 2+1024 1.7x10308 - Desnormalizados: hasta 2-1075 2.4x10 2 4x10-324
Fundamentos de Informtica
82
41
83
Fundamentos de Informtica
84
42
Utiliza 8 bits para representar cada carcter. Hay caracteres que se usan para casos especiales (fin de cadena, por ejemplo)
Fundamentos de Informtica
85
Fundamentos de Informtica
86
43
Fundamentos de Informtica
87
Ejemplo.
Si la cadena es: Vaya chapa, hay 10 caracteres (se incluye el espacio en blanco) y los caracteres se almacenaran en las posiciones X, X+1, X+2.X+9, ocupando el carcter NUL la posicin X+10
Fundamentos de Informtica Tema 1 - Representacin de la Informacin
88
44
Algunas referencias.
Fundamentos de Informtica y Programacin g en C. Diego R. Llanos Ferraris (Paraninfo 2010) Fundamentos de los computadores (9 edic) Pedro de Miguel Anasagasti. (Thomson 2004) Conceptos de Informtica. A.Prieto Espinosa p y B. Prieto Campos. p (Schaum. Mc-Graw-Hill 2005)
Fundamentos de Informtica
89
45