Está en la página 1de 67

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Representacin de la informacin o o
Prof. Rodrigo Araya E. raraya@inf.utfsm.cl
Universidad Tcnica Federico Santa Mar e a Departamento de Informtica a

Valpara 1er Semestre 2006 so,

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Introduccin o

En el mundo que vivimos estamos rodeados de informacin, se o dice la llamada Sociedad de la informacin. o Pero, Que es la informacin? o

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Denicin de Informacin o o

Datos: Representacin simblica de un atributo o o o caracter stica. Un dato por si solo no dice nada. Informacin: Conjunto de datos procesados que nos permiten o realizar operaciones o tomar decisiones.

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Informacin o

Existen distintos espacios en los cuales se puede representar la informacin. o Espacio mental. Espacio del lenguaje. Espacio tipogrco. a Espacio del Computador.

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Informacin Analgica e Informacin Digital o o o

Comnmente la informacin es procesada de 2 maneras: u o analgica y digitalmente. o Cual es la diferencia entre informacin digital e informacin o o analgica? o La representacin de la informacin est dada por seales. o o a n por lo que existen seales analgicas y seales digitales. n o n

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Informacin Analgica e Informacin Digital o o o

Una seal se puede considerar como una funcin en el tiempo n o g (t). Una funcin g (t) continua en el tiempo se dice que es una o seal analgica. n o Por su parte, una seal digital es una funcin discreta n o (niveles).

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Seal Analgica n o

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Seal Digital n

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Informacin Analgica e Informacin Digital o o o

Seales Analgicas: n o
Audio. Instrumentos con agujas.

Seales Digitales: n
TTL. instrumentos con indicadores numricos. e

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Informacin Analgica e Informacin Digital o o o

En la naturaleza todo es analgico, ya que f o sicamente todo es continuo. los computadores realizan sus operaciones sobre informacin o digital. Es posible convertir la informacin analgica en informacin o o o digital y vice versa (ADC y DAC).

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Informacin Analgica e Informacin Digital o o o

Es mejor la informacin digital? o Se evitan errores debidos a cambios f sicos, como la temperatura, humedad, etc. Se evitan los errores acumulativos.

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Representacin Numrica o e

Existen diversas representaciones numricas. e Sin duda, las ms fciles y cmodas de utilizar para nes a a o matemticos, son las que se representan mediante bases a numricas. e Las representaciones numricas que utilizan bases, son e posicionales. Es posible representar una misma cantidad numrica, en e diferentes bases.

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Bases Numricas e

Forma general de expresar un nmero en funcin de su base u o k1 k2 k3 . . . km = k1 B m1 + k2 B m2 + + km1 B 1 + km B 0 donde B =base y ki =la cifra i. Las cifras ki pueden ser d gitos entre 0 y B 1.

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Nmeros Decimales u
La base ms comn y natural de utilizar es la base 10, la que a u corresponde a los nmeros decimales. u En esta base estamos acostumbrados a realizar todas nuestras operaciones de clculo. a Por ejemplo... El nmero 7523810 puede ser representado de la forma general, de u la siguiente forma: 7 104 + 5 103 + 2 102 + 3 101 + 8 10 .
RAE Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Nmeros binarios u

En el mundo digital, se utilizan generalmente representaciones que tienen solo 2 estados discretos (0 o 1, on u o, etc...). Para ello se utilizan los nmeros binarios {0,1} cuya base es 2. u Por ejemplo... Si se tiene 10011102 corresponde a: 1 26 + 0 25 + 0 24 + 1 23 + 1 22 + 1 21 + 0 20 = 7810

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Bases Numricas e

En la computacin son muy utiles adems las bases octal(8) y o a hexadecimal(16). La utilidad de estas bases, se debe a que pueden representar informacin binaria de manera compacta (8 y 16 bits). o

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Sistemas Octal y Hexadecimal


Sistema Octal D gitos: 0,1,2,...,6,7 Ej: 53278 = 5 83 + 3 82 + 2 81 + 7 80 = 277510 Base Hexadecimal D gitos: 0,1,2,...,9,A,B,C,D,E,F Ej: 2A5D16 = 2 163 + 10 162 + 5 161 + 13 160 = 1084510

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Bases Numricas e
Las bases numricas tambin se pueden extender para e e representar nmeros decimales. u De forma general: k1 k2 k3 . . . km , kj = k1 B m1 +k2 B m2 + +km B 0 +kj B 1

Por ejemplo... 376, 5310 = 3 102 + 7 101 + 6 10 + 5 + 101 + 3 102 1011, 0112 = 1 23 + 1 21 + 1 2 + 1 22 + 1 23 = 11, 375 372, 438 = 3 82 + 7 81 + 2 80 + 4 81 + 3 82 = 250, 546875
RAE Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Conversin de Bases Numricas o e


Para la conversin desde la base decimal, a otra base, se o realizan divisiones sucesivas de los cocientes, por la base a la cual se transformar. Rescatando en cada paso los restos de a las divisiones. Por ejemplo... Convertir 23410 a la base octal. 234 8 29 2 23410 = 3528 3 5 0 3

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Conversin desde la base Decimal o


Ejemplo 2 Convertir 53710 a la base binaria. 537 2 268 1 134 0 67 0 33 1 53710 = 10000110012 16 1 8 0 4 0 2 0 1 0 0 1
RAE Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Conversin desde la base Decimal o

Ejemplo 3 Convertir 134510 a la base hexadecimal. 1345 16 84 1 134510 = 54116 5 4 0 5

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Conversin desde la base Decimal o


Esta idea se puede extender adems para nmeros a u fraccionarios. En este caso es necesario tratar la parte entera y la parte decimal, por separado. Por ejemplo... Convertir 23, 437510 a la base binaria. 23 2 0,4375 2 11 1 0,875 2 5 1 23, 437510 = 10111, 01112 1,750 2 2 1 1,500 2 1 0 1,000 2 0 1
RAE Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Conversin hacia la base Decimal o


Para realizar una conversin desde cualquier base a la base o decimal, es necesario aplicar la frmula general propuesta o anteriormente: k1 k2 k3 . . . km = k1 B m1 +k2 B m2 + +km1 B 1 +km B 0 Por ejemplo... Convertir 724, 348 a la base decimal. 7 82 + 2 81 + 4 80 + 3 81 + 4 82 = 468,4375

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Conversin entre las bases de potencia de 2 o

De manera muy particular, entre las bases que son potencias de 2, existe una propiedad que hace muy rpida la conversin. a o Las ms conocidas son Binario, Octal y Hexadecimal. a El procedimiento de esta conversin se basa en utilizar la o conversin a binario como conversin intermedia. o o Es decir, por ejemplo para convertir un nmero en base octal u a base hexadecimal, se convierte primero a binario y luego a hexadecimal.

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Conversin de una base potencia de 2 a Binario o


Para realizar la conversin, se considera B = 2n , por lo que o cada d gito del nmero en base B corresponden a n d u gitos de base binaria. Por Ejemplo... Para convertir 5248 a binario, se tiene que B = 8 = 23 , por lo que n = 3. Luego cada d gito del nmero a convertir se traduce en 3 u d gitos binarios. 2 4 5 5248 = 1010101002 101 010 100

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Conversin de una base potencia de 2 a Binario o

Ejemplo 2 Para convertir 3E 716 a binario, se tiene que B = 16 = 24 , por lo que n = 4. Luego cada d gito del nmero a convertir se traduce en u 4 d gitos binarios. E 7 3 3E 716 = 11111001112 0011 1110 0111

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Conversin de Binario a una base potencia de 2 o

Para este procedimiento se considera de igual manera, B = 2n , por lo que se deben hacer grupos de n d gitos (de derecha a izquierda). Por Ejemplo... Para convertir 100110102 a Octal, se tiene que B = 8 = 23 , por lo que n = 3. Luego se agrupa de la siguiente forma: 10 011 010 100110102 = 2328 3 2 2

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Conversin de Binario a una base potencia de 2 o

Ejemplo 2 Para convertir 11011100010102 a hexadecimal, se tiene que B = 16 = 24 , por lo que n = 4. 1 1011 1000 1010 11011100010102 = 1B8A16 1 B 8 A

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Aritmtica de los Computadores e


Como se explic anteriormente, los computadores tienen como o unidad de almacenamiento, slo la capacidad de distinguir o entre 2 estados (on u o, 0 o 1, etc..). Los computadores pueden realizar operaciones aritmticas, por e lo que requieren de algn dispositivo de HW para almacenar u los nmeros que se estn operando. u e Estos dispositivos se denominan registros. los registros tienen un ancho en bits, denido por la arquitectura. Actualmente los procesadores utilizan registros de 32 o 64 bits.

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

El Registro

Un registro se representa por un conjunto de bits (generalmente 8, 16, 32 o 64). un ejemplo de un registro de 16 bits esta dado por: 1 1 0 0 1 0 1 1 0 0 0 1 1 0 Por convencin, los grupos de 8 bits(b) se denominan o bytes(B). 1 1

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

El Registro

Podemos darnos cuenta, que si un nmero debe ser u almacenado en un registro, entonces el tamao mximo de n a este nmero est limitado por el ancho del registro. u a Con slo 16 bits el nmero ms grande representable por un o u a 16 1 = 65535. registro es 2 Sin embargo, Cuando hemos utilizado nuestros computadores normales (de 32 bits), hemos podido trabajar con nmeros u 32 1? mayores a 2

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Aritmtica de los Computadores e


Sin duda, al hablar de operaciones aritmticas se requiere e adems que el computador sea capaz de trabajar con nmeros a u negativos y con nmeros decimales. u Como se representa un nmero negativo en un registro? u Existen diferentes formas de representar un nmero negativo, u pero por convencin el bit ms signicativo del registro o a representa el signo. Nmero positivo. u 0 1 0 0 1 0 1 1 0 0 0 1 1 0 1 1 Nmero negativo. u 1 1 0 0 1

1
RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Nmeros negativos u

Hay 3 formas de representar nmeros negativos u


Signo y Magnitud (S-M). Complemento 1 (C-1). Complemento 2 (C-2).

En estas 3 representaciones, los nmeros positivos quedan de u la misma forma.

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Signo y Magnitud
La idea de esta representacin, es reservar el bit ms o a signicativo del registro, para el signo y en el resto de los bits se almacena la magnitud. En un registro de 16 bits, slo se utilizan 15 bits para la o magnitud, es decir, el rango representable en 16 bits es: -32767 a 32767. Ejemplo para representar el nmero 1310 en un registro de 6 bits. u 1 0 1 1 0 1

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Signo y Magnitud

Segn el ancho n de un registro, el rango de nmeros u u representables est dado por: a (2n1 1) N +(2n1 1) El problema que surge de esta representacin es el que existen o dos ceros (+0 y 0).

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Complemento 1
La idea de esta representacin es bsicamente tomar un o a nmero positivo y luego complementar cada bit del registro u para transformarlo en negativo. este mecanismo es bastante sencillo y rpido de realizar. a Ejemplo para representar el nmero 1310 en un registro de 6 bits. u
Primero se considera 1310 0 0 1 1 0 1 Luego se complementa cada bit 1 1 0 0 1 0

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Complemento 1

Segn el ancho n de un registro, el rango de nmeros u u representables est dado por: a (2n1 1) N +(2n1 1) Al igual que en S-M, existen dos ceros (+0 y 0).

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Complemento 2

En esta representacin, el Complemento 2 de N en un registro o de m bits se obtiene calculando 2m N. Ejemplo para representar 1 0 0 0 0 0 0 1 0 1 1 0 el nmero 1310 en un registro de 6 bits. u 0 0 0 1 0 1 1310 = 1100112 en C-2. 0 1 1

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Complemento 2
La otra forma de calcular el Complemento 2, es calcular primero el C-1 y luego sumar 1. De esta forma, su clculo es bastante rpido y sencillo, por lo a a que es muy fcil de implementar por HW. a Ejemplo para representar el nmero 1310 en un registro de 6 bits. u 0 0 1 1 0 1 13 13 en C-1. 1 1 0 0 1 0 + 0 0 0 0 0 1 Se suma 1. 1310 en C-2. 1 1 0 0 1 1

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Complemento 2

Segn el ancho n de un registro, el rango de nmeros u u representables est dado por: a (2n1 ) N +(2n1 1) Con el C-2 se soluciona el problema de los dos ceros, existiendo un unico cero, por lo que el rango de nmeros u representables es asimtrico. e

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Suma de Registros

Para realizar sumas de registros, debemos sumar nmeros u binarios. La idea de esto es aprender como la mquina realiza las a operaciones aritmticas internamente. e Analizaremos los formatos C-1 y C-2 de representacin, ya o que se pueden implementar por HW.

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Suma de Registros
Al realizar una suma, es posible tener un carry de salida y/o un carry de entrada. Suma con carry de salida y sin carry de entrada: 1 + 1 1 0

Suma con carry de salida y carry de entrada: 1 + 1 1 0 0

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Suma de Registros

Al sumar registros debemos tener en cuenta que es posible causar un overow. Recordemos que en n bits solo es posible representar nmeros u entre: (2n1 1) y (2n1 1) para C-1 y (2n1 ) y (2n1 1) para C-2.

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Suma de Registros en C-2


Algunos ejemplos... Si queremos calcular (7 4) utilizando registros de 5 bits.: 0 1 1 Luego, 1 + 1 0 1 0 1 0 1 0 0 1 1 1 0 1 0 1 0 0 1 0 4. 4 en C-1 4 en C-2

1 1 0

1 0 1
RAE

1 0 1

7. 4 en C-2. 3 en C-2.

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Suma de Registros en C-2


Algunos ejemplos... Calcular (5 8) utilizando registros de 5 bits.: 0 1 1 0 1 1 1 0 1 0 0 0 1 0 1 5 8 en C-2. 3 en C-2.

Calcular (7 7) utilizando registros de 5 bits.: 1 + 1 0 1 0 1 0 1 0 1 1 0 0 1 1 0 0


RAE

1 1 0

7 7 en C-2. 0 en C-2.

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Suma de Registros en C-2


Utilizando registros de 5 bits en C-2, el nmero m u nimo representable es -16 y el mximo representable es +15. a Si no cumplimos con esto, se produce un overow. Ejemplos de overow Si intentamos calcular (10 8) utilizando registros de 5 bits.: 1 + 1 1 0 0 1 1 1 0 1 1 0 1 0 0 0 10 en C-2. 8 en C-2. ???.

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Overow

Ejemplos de overow Si intentamos calcular (9 + 7) utilizando registros de 5 bits.: 1 0 0 1 1 1 0 0 1 0 1 0 1 0 1 0

1 1 0

9. 7. ???.

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Overow

Como es posible detectar un overow? Para detectar un overow es necesario analizar el carry de salida y el de entrada, al bit del signo (el bit ms signicativo). a Si ambos carry (entrada y salida) son iguales, NO hay overow. En caso contrario (si los carry son distintos), existe overow.

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Suma de Registros en C-1


Tambin se puede operar aritmticamente con registros en e e C-1. Algunos ejemplos Si calculamos (7 4) utilizando registros de 5 bits.: 1 1 0 1 0 + 0 1 1 0 1 0 0 0 1 1 0 0 0 1 1 1 1 1 1 1 1 1 0 1 1 4 en C-1 7. 4 en C-1. Si hay carry de salida, Se suma. 3 en C-1.
RAE Representacin de la informacin o o

1 +

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Suma de Registros en C-1


Algunos ejemplos Si calculamos (5 8) utilizando registros de 5 bits.: 1 0 0 1 1 1 1 1 1 0 1 0

0 1 1

1 1 0

5. 8 en C-1. 3 en C-1.

Si calculamos (7 7) utilizando registros de 5 bits.: 0 1 1 0 1 1 1 0 1 1 0 1


RAE

1 0 1

7. 7 en C-1. 0 en C-1.

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Aritmtica de Punto Flotante e


A Comienzos de 1980 con la ayuda de varios cient cos, entre ellos W. Kahn, se desarrollo un estndar para el sistema de a Punto Flotante, que adopto la IEEE (IEEE 754 ). Con la introduccin de este Sistema de Punto Flotante se o resolvieron las limitaciones que tiene el Sistema de Punto Fijo. El estndar cumple con 3 requisitos: a
1

2 3

La representacin del Punto Flotante debe ser consistente en o todas las mquinas que lo adopten. a La aritmtica de redondeo debe ser correcta. e El tratamiento de casos especiales debe ser consistente (Ej: divisin por cero, etc...). o

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Aritmtica de Punto Flotante e


La notacin de Punto Flotante se asemeja a la notacin o o cient ca o exponencial en la que representamos a los nmeros. u La idea principal de esta notacin, es facilitar la comparacin o o entre los nmeros y su ordenamiento. u

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Aritmtica de Punto Flotante e


Representacin del estndar IEEE754 o a Solo nos preocuparemos de la representacin de precisin simple o o (32 bits). 1 bit S 8 bits E 23 bits M

S: Signo (0=positivo y 1=negativo) E: Exponente sesgado. M: Mantisa (magnitud del nmero normalizado). u

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Aritmtica de Punto Flotante e


El exponente sesgado corresponde a: e + (B n1 1) Donde e es el exponente real y n el nmero de bits para u representar el exponente (en precisin simple son 8 bits). o La normalizacin de un nmero se reere a dejarlo de la forma: o u
+ + e 1.b1 b2 b3 . . . b23 x2

En los 23 bits de la mantisa, se almacenan los bits desde el b1 al b23 sin considerar el 1 que esta a la izquierda de la coma, llamado bit oculto (hidden bit).

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Aritmtica de Punto Flotante e


El rango de nmeros representables est dado por: u a 1,2x1038 a3,4x10+38 Se debe tener en cuenta que existe un cierto grado de precisin, que est dado por (psilon). o a e Este nmero es la diferencia entre 1 y el nmero prximo u u o ms grande. a Luego, est dado por: 2n donde n es el nmero de bits que a u tiene la mantisa. Por ejemplo para la precisin simple, se tiene que o = 223 = 0,000000119 Qu precisin se logra con una mantisa de 3 bits? e o
RAE Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Aritmtica de Punto Flotante e


Como sumar o restar en Punto Flotante? Para sumar o restar, es necesario realizar los siguientes pasos: 1) Se debe desplazar la mantisa del nmero que tenga u menor exponente, hasta igualar al exponente del otro nmero. En este paso es posible perder bastantes u d gitos del nmero. u 2) Sumar las mantisas (en caso de ser una resta, es necesario utilizar el complemento 2). 3) Finalmente si es necesario, se debe volver a normalizar.

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Aritmtica de Punto Flotante e


Un ejemplo de suma Si queremos sumar los nmeros 1,101x22 y 0,1x2+3 u 1) 1,101x22 = 0,00001101x2+3 2) Se suma: 0,10000000 + 0,00001101 0,10001101 3) El resultado es 0,10001101x2+3 y nalmente se normaliza, quedando 1,0001101x2+2 Es importante vericar que no se produzcan overow.
RAE Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Cdigos o

Por cdigo se entiende una relacin capaz de llevar un o o conjunto de s mbolos de un espacio (dominio), a otro espacio diferente (codominio).

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Cdigo BCD o

Por ejemplo para representar el nmero 57310 se puede u convertir a binario, resultando 57310 = 10001111012 Esta conversin resulta un poco larga, si pensamos que se o debe realizar por cada nmero que queremos representar. u Adems, se debe tener conocimiento completo del nmero, a u para poder realizar la conversin. o

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Cdigo BCD o
El cdigo BCD establece una relacin que permite convertir o o rpida y fcilmente los nmeros decimales en binarios. a a u Tabla de conversin BCD o Decimal 0 1 2 3 4 BCD 0000 0001 0010 0011 0100 Decimal 5 6 7 8 9 BCD 0101 0110 0111 1000 1001

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Cdigo BCD o

Ejemplo de conversin a BCD o Convertir 438510 a un nmero en BCD: u 4 0100 3 0011 8 1000 5 0101

4385 = 0100 0011 1000 0101

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Cdigo BCD o

El cdigo Gray tiene propiedades muy particulares, por o que o es altamente utilizado. Esta denido de la siguiente forma:
El cdigo Gray de 1 bit, esta dado por {0, 1}. o El cdigo se puede construir para k + 1 bits, dado el cdigo de o o k bits. Para ello se hace una lista con el cdigo Gray conocido y se le o anteponen 0s. Luego se sigue la lista con el cdigo en orden o inverso, y antepuesto por 1s.

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Cdigo Gray o

Construccin del Cdigo Gray o o 0 0 0 0 1 1 1 1 0 0 1 1 1 1 0 0 0 1 1 0 0 1 1 0

0 1

0 0 1 1

0 1 1 0

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Cdigo Gray o
Ejemplo de un cdigo Gray de 3 bits o i 0 1 2 3 4 5 6 7 G (i) 000 001 011 010 110 111 101 100 G (i) 0 1 3 2 6 7 5 4

La funcin inversa G (i)1 = j se dene si G (j) = o

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Cdigos o

Existen otros cdigo, como por ejemplo el EBCDIC. o Por ejemplo el cdigo ASCII (American Standard Code of o Information).

RAE

Representacin de la informacin o o

Contenido Introduccin o Representacin Numrica o e Aritmtica Computacional e Aritmtica de punto Flotante e Cdigos o

Fin...

RAE

Representacin de la informacin o o