representación digital de datos

30
Dr. Adrián Antonio Castañeda Galván

Upload: adrian-castaneda

Post on 08-Jun-2015

1.176 views

Category:

Education


5 download

TRANSCRIPT

Page 1: Representación digital de datos

Dr. Adrián Antonio Castañeda Galván

Page 2: Representación digital de datos

Es una representación simbólica de una cantidad.

Un número tiene 3 características principales:

1. Rango: intervalo entre el máximo y el mínimo símbolo.

2. Precisión: distancia entre símbolos sucesivos 3. Error: la diferencia entre el valor real del símbolo y

el símbolo representativo mas cercano.

Dr. Adrián Antonio Castañeda Galván

Page 3: Representación digital de datos

Un numero con signo de base 10 de 2 dígitos tiene:

Rango = [-99, +99]. Presición = 1 Error = ½ * Presición = 0.5

Ejemplo: si escogemos a=70, b=40 y c=-30 entonces a+(b+c)=80 que es correcto, pero (a+b)+c=-20. Por qué?

Dr. Adrián Antonio Castañeda Galván

Page 4: Representación digital de datos

Los sistemas con base, son sistemasposiciónales dado que la representación decualquier número se realiza mediante unconjunto de símbolos y su posición relativadentro de la expresión.

1ni

ii m

N a b−

=−

= ∑Dr. Adrián Antonio Castañeda Galván

Page 5: Representación digital de datos

Donde ai es un símbolo del sistema al que llamamos digito y b es la base.

La base es igual a la cantidad de símbolos que tiene el sistema.

El digito es la representación de los números enteros menores que la base de tal manera que:

b>ai>=0Dr. Adrián Antonio Castañeda Galván

Page 6: Representación digital de datos

Sistema decimal: El sistema de numeración utilizado en la vida cotidiana es el decimal, cuya base es diez, utilizando los conocidos diez símbolos 0, 1, 2, 3, 4, 5, 6, 7, 8 y 9 .

Sistema binario: Es el sistema de base 2 en el cual los dos símbolos utilizados son el 0, 1, los que reciben el nombre de bit (binary digit).

Sistema Octal: Es el sistema de base 8 en el cual se usan los símbolos 0, 1, 2, 3, 4, 5, 6, 7.

Sistema Hexadecimal: Es el sistema de base 16 en el cual se usan los símbolos 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F .

Dr. Adrián Antonio Castañeda Galván

Page 7: Representación digital de datos

Conversión de Base usando el método del residuo.

Conversión de Base usando el método de la multiplicación.

Conversión entre bases con potencias de 2.

Dr. Adrián Antonio Castañeda Galván

Page 8: Representación digital de datos

Ejemplo: Convertir 23.375 a base 2.

Empiece por convertir la parte entera.

Numero/base

Entero Residuo

23/2 11 1 Bit menos significativo

11/2 5 1

5/2 2 1

2/2 1 0

1/2 0 1 Bit mas significativo

Dr. Adrián Antonio Castañeda Galván

Page 9: Representación digital de datos

Ahora convierta la fracción.

Juntando los resultados tenemos 23.375= 10111.0112

Numero*base Entero Residuo

0.375*2 0 0.75 Bit más significativo

0.75*2 1 0.5

0.5*2 1 0 Bit menos significativo

Dr. Adrián Antonio Castañeda Galván

Page 10: Representación digital de datos

Convertir entre bases con potencias de dos esrelativamente fácil, lo que hay que hacer escontestar una sencilla pregunta:

Cuantos bits deben de usarse para cada base 4, 8,16?

Para la base 2 en el que 2=21, el exponente es 1 así quesolo un bit es necesario para cada digito de la base2. 4=22 así que 2 bits son necesarios para cada digitode la base 4. De la misma manera para la base 8=23

y para la base 16=24, asi que 3 y 4 bits son usadospara la base 8 y 16 respectivamente.

Dr. Adrián Antonio Castañeda Galván

Page 11: Representación digital de datos

Ejemplos:

10112 = (102)(112) = 234 1010102 =(1012)(0102) = 528 011011012 = (01102)(11012) = 6DH

Dr. Adrián Antonio Castañeda Galván

Page 12: Representación digital de datos

Carácter String Entero sin signo Entero con signo

complemento a unocomplemento a dosdesplazamiento

Numero flotante

Dr. Adrián Antonio Castañeda Galván

Page 13: Representación digital de datos

Entendemos por caracteres los símbolos que seutilizan en el lenguaje natural escrito: letras,números, símbolos de puntuación, símbolosespeciales, etc.

En la actualidad la forma más difundida derepresentar estos símbolos es la establecida por laInternational Standard Organization como ISO/IEC8859-1 de 8 bits que es una evolución del ASCII de 7bits (American Standard Code for InformationInterchange).

Dr. Adrián Antonio Castañeda Galván

Page 14: Representación digital de datos

Dr. Adrián Antonio Castañeda Galván

Page 15: Representación digital de datos

El tipo STRING es una sucesión de caracteres. Existen varias formas derepresentación interna. Lo principal a saber es dónde termina lasucesión.

Una primera manera es emplear largo fijo. Esta representación esdemasiado rígida.

Una segunda manera es reservar un código especial para fin de string.Este código especial no podrá formar parte del string. Por ejemplo, ellenguaje "C" utiliza el NULL para fin de string.

Una tercera manera consiste en convertir los strings en un registro dondeel primer campo tiene el largo y el segundo tiene el contenido. El únicoinconveniente es que la estructura es más compleja. En BASIC se puedenencontrar ejemplos de esta representación.

Dr. Adrián Antonio Castañeda Galván

Page 16: Representación digital de datos

Los enteros sin signo (siempre positivos) poseen la representación más simple: su código binario coincide con su expresión en base 2 restringida a un número fijo de bits.

En general el rango de la representación para n bits será:0 ≤ N ≤ 2n-1

Se utilizan para contadores, direcciones, punteros y para derivar otros tipos. Las operaciones elementales de este tipo son las cuatro usuales para los números enteros (+ - * / ).

Dr. Adrián Antonio Castañeda Galván

Page 17: Representación digital de datos

Si tenemos n bits para representar el número, tomamos uno para el signo y el resto representa el valor absoluto del número en binario (expresión del numero en base 2).

Para n bits el rango es:-(2n-1-1) ≤ N ≤ (2n-1-1)

Dr. Adrián Antonio Castañeda Galván

Page 18: Representación digital de datos

Los números positivos se representan en binario, y los números negativos se representan como el valor absoluto complementado bit a bit. El bit mas a la izquierda representa el signo (0 positivo y 1 negativo). Tanto el numero negativo como el positivo se obtienen complementando cada bit, de 0 a 1 y de 1 a 0.

Para n bits el rango es:-(2n-1-1) ≤ N ≤ (2n-1-1)

La desventaja de esta representación es que el 0 tiene dos posibles representaciones 0000 y 1111.

Ejemplo para n=4

Dr. Adrián Antonio Castañeda Galván

Page 19: Representación digital de datos

Los números positivos se representan directamente en binario y para conseguir el código de los negativos, se complementa el valor absoluto y se los incrementa en uno.

Sus propiedades mas importantes son: Para n bits el rango es:

-(2n-1) ≤ N ≤ (2n-1-1) La representación del cero es coherente. Se mantienen las propiedades de la suma.

Dr. Adrián Antonio Castañeda Galván

Page 20: Representación digital de datos

Dr. Adrián Antonio Castañeda Galván

Page 21: Representación digital de datos

La representación por desplazamiento supone un corrimiento de los valores a representar según un valor d (llamado desplazamiento). Para el desplazamiento, se supone que el valor codificado (resultado de la operación N + d), es un número que para n bits es un valor entre 0 y 2n-1, por lo que permite representar valores desde –d a 2n-d-1.En general para representar 2n números diferentes, se asigna a d el valor 2n-1, o 2n-1-1 aplicando un módulo de 2n.

N → ( N + d ) representado con n bits

Dr. Adrián Antonio Castañeda Galván

Page 22: Representación digital de datos

Ejemplo: n= 4 y d = 8 -8→ 0000 -7→ 0001 .... -1→0111 0→1000 1→1001 .... 7→1111

Dr. Adrián Antonio Castañeda Galván

Page 23: Representación digital de datos

Se usan para sumar cantidades de muchos dígitos donde no se puede perder precisión. Los algoritmos son similares a los empleados en las operaciones decimales hechas a mano.

Observamos que en la representación en 8 bits para dígitos, se usan 10 de los 256 códigos. La codificación típica es:

0 -> 00000000 1 -> 00000001 ......... 9 -> 00001001 En esta representación se emplean 8 bits para cada lugar, cuando

solamente necesita 4 bits. Por esta razón se definen como los decimales empaquetados, en los cuales se codifica con 4 bits. También se les llama enteros BCD (Binary Coded Decimal Digit).

Dr. Adrián Antonio Castañeda Galván

Page 24: Representación digital de datos

Código BCD

Suma en BCDCorrección del código

Dr. Adrián Antonio Castañeda Galván

Page 25: Representación digital de datos

+07910 = 0000 0111 1001BCD -07910 = 1001 0010 0001BCD El -079 se obtiene restando cada digito de 9 para

obtener el complemento a 9 , 999 – 079 = 920; posteriormente se le suma 1 para obtener el complemento a diez, 920+1=921; convirtiendo este numero a BCD obtenemos 1001 0010 0001.

Dr. Adrián Antonio Castañeda Galván

Page 26: Representación digital de datos

La representación de números con punto flotante están basadas en la siguiente notación:

N = (-1)s .be.M Donde s es el signo e es el exponente m es la mantisa b es la base Las bases son normalmente 10 y 2. Para que los números representados en punto flotante

fueran posibles intercambiar entre distintas arquitecturas se establece el estándar IEEE 754 que define el formato y las operaciones con estos.

Dr. Adrián Antonio Castañeda Galván

Page 27: Representación digital de datos

El estándar define 3 formatos

Los números se almacenan de la siguiente forma:

S e F

Dr. Adrián Antonio Castañeda Galván

Page 28: Representación digital de datos

Los números normalizados son de la forma : 1,F. donde el bit más significativo de la mantisa es un 1. Como todos los números normalizados tienen un uno en el bit más significativo el estándar define una representación diferente que omite este bit. Por lo tanto la representación es de la siguiente forma:

( ) ( ) ( )12 11 .2 . 1,

nesN F−+ −

= −

( ) ( )1271 .2 . 1,s eN F+= −

( ) ( )10231 .2 . 1,s eN F+= −

En forma general

Para simple precisión

Para doble precisión

Dr. Adrián Antonio Castañeda Galván

Page 29: Representación digital de datos

Convertir -12.62510 al formato IEEE 754 de simple precisión con base 2.

Paso 1: convertir -12.625 a la base deseada = -1100.1012 Paso 2: Normalizar -1100.1012 = -1.1001012x23

Paso 3: Llenar los campos. El signo es negativo, así que el bit de signo es 1, Exponente es en desplazamiento 127, así que el exponente es un numero positivo igual a 3 + 127. El bit 1 significativo se esconde, por lo que el resultado es:

S e . F 1 1000 0010 . 1001 0100 0000 0000 0000 000 binario C14A0000 Hex

Dr. Adrián Antonio Castañeda Galván

Page 30: Representación digital de datos

Dr. Adrián Antonio Castañeda Galván