[go: up one dir, main page]

0% encontró este documento útil (0 votos)
104 vistas17 páginas

Unidad 10. Representación Interna de Los Datos

Este documento trata sobre la representación interna de datos en sistemas informáticos. Explica los sistemas de numeración como binario y hexadecimal, y métodos para representar enteros, reales y códigos. También cubre temas como complementos binarios, codificación de errores y formatos de códigos.

Cargado por

lpiloace
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)
104 vistas17 páginas

Unidad 10. Representación Interna de Los Datos

Este documento trata sobre la representación interna de datos en sistemas informáticos. Explica los sistemas de numeración como binario y hexadecimal, y métodos para representar enteros, reales y códigos. También cubre temas como complementos binarios, codificación de errores y formatos de códigos.

Cargado por

lpiloace
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
Está en la página 1/ 17

UNIDAD 10.

REPRESENTACIÓN INTERNA DE LOS DATOS


1. Comunicación ser humano-ordenador
2. Necesidad de la representación interna
3. Sistemas de numeración usuales en informática
a. Sistemas posicionales
b. Sistema binario natural
i. Características
ii. Operaciones
1. Traducción binario-decimal
2. Operaciones aritméticas y lógicas
c. Representación en complementos
i. Complemento a la base menos 1 (a uno su la base es 1)
ii. Complemento a la base (a dos si la base es dos)
d. Sistemas intermedios
i. Octal
ii. Hexadecimal
4. Representación interna de la información
a. Representación interna de datos enteros
i. Sin signo
ii. Con signo
1. Signo y magnitud
2. Complemento a 1 y 2
3. Representación sesgada
iii. Correspondencia entre convenios
b. Operaciones con números enteros
i. Signo y magnitud
1. Suma y resta
2. Multiplicación y división
ii. Complementos a 1 y 2
1. Suma y resta
2. Multiplicación y división.
c. Representación interna de datos reales
i. Notación exponencial
ii. Representación en coma flotante.
iii. Estándar IEE 754
1. Estructura
2. Casos especiales
3. Redondeo
4. Valores límite y tamaños
5. Códigos de E/S
a. BCD
b. EBCDIC
c. ASCII
d. UNICODE
6. Códigos detectores y correctores de errores
a. El ruido y sus efectos. Codificación para la protección
b. Distancia de HAMMING
c. Comprobación de paridad
i. Paridad lineal
ii. Paridad longitudinal y transversal p bidimensional.
d. Códigos cíclicos
e. Códigos de Hamming
i. Cálculo del tamaño de los códigos de Hamming
7. Bibliografía

1.COMUNICACIÓN SER HUMANO – ORDANDOR

Es posible concebir la transmisión de información entre personas y máquinas como una


comunicación bidireccional en la que los interlocutores son la persona y la CPU del ordenador, y
el canal se compone en parte de medio físico y en parte de elementos periféricos del ordenador

• Conceptos sobre sistemas de comunicación


o Transmisor: lugar donde se genera el mensaje
o Receptor: recibe el mensaje
o Canal: vía de transmisión del mensaje
El proceso de transferencia de información ser humano-computadora puede hacerse de muchas
formas.
o Usando símbolos de distinto tipo.
o Alfanuméricos
o Con significado matemático
o Mediante gráficos e imágenes
o Con órdenes de control
o Mediante registros
o Con cualquier periférico capaz de tomar algún tipo de datos y enviarlo al ordenador o a la
inversa
En cada caso el canal tendrá distintas características.
La representación interna de la información se suele efectuar empleando un esquema de señales
biestables por lo que debe establecerse una correspondencia entre el conjunto origen y el conjunto
imagen. Surge la necesidad de la codificación.
Se entiende por código el conjunto de condiciones y convenios que permiten transformar la
información de una representación concreta a otra. Un código se compone de

• Un conjunto de reglas y convenios para transformar el alfabeto fuente -


• Un nuevo alfabeto que sustituirá a la fuente.
En el proceso de codificación hay que tener en cuenta tres aspectos

• Coste de traducción
• Coste de almacenamiento.
• Coste de tratamiento de la información. En función del código empleado puede que se
faciliten o no ciertas operaciones.
2.NECESIDAD DE LA REPRESENTACIÓN INTERNA
En las operaciones aritméticas con números es necesario efectuar una traducción entre el formato
de E/S y el formato interno de representación. Las razones obtener una representación de los datos
los más adecuada posibles a las características del ordenador.
Características que condicionan la representación interna

• El ordenador trabaja internamente con el sistema binario


• Es espacio material disponible para la representación de los datos es finito
• Las unidades funcionales y buses están preparadas para operar con cadenas de bits de uno
a varios tamaños prefijados.
Dada una arquitectura de ordenador existirán ciertos tamaños de datos que serán más fácilmente
manipulables que otros por parte de la CPU. Estos tamaños suelen ser múltiplos o divisores enteros
del ancho de palabra y se denominan con diferentes nombres.

• Octeto
• Palabra: tamaño de la información manejada en paralelo por algún componente del
sistema, como la memoria o los registros o buses.
• Múltiples o divisiones de la palabra: por ejemplo, la media palabra o nibble.
3.SISTEMAS DE NUMERACIÓN USUALES EN INFORMÁTICA.
En la representación interna de la información se suele utilizar alguna variante del código binario.
También se utilizan los códigos intermedios (octal y hexadecimal) que son una forma más
compacta de representar magnitudes binarias.
3.1.-Sistemas posicionales
Un sistema de numeración es un conjunto de reglas que permiten escribir cualquier número
partiendo de un número finito de símbolos. Combinándolas adecuadamente es posible escribir
cualquier magnitud. Esto es posible gracias a la notación posicional
Un sistema de numeración posicional en base b usa un alfabeto de b símbolos o cifras distintas.
Las cifras se combinan para formar números, cada posición de un número tiene un peso específico
que se multiplica por el valor intrínseco de la cifra.

• Dado un sistema de numeración en base b, b>1, cualquier número R en notación


posicional:
R=Xn-1 Xn-2 …. X0,X-1, …Xm
Tiene un valor obtenible a partir del cálculo del polinomio.
V(R) =Xn-1*b n-1 +Xn-2*b n-2 +…+X1*b+X0*b0+X1*b -1 +…. +Xnb -m

• A la expresión que desarrolla todos los términos de R, V(R). Se la conoce como notaciones
polinómicas extensa y la que solo indica los coeficientes del polinomio notación polinómica
abreviada.
En la representación informática de los datos se emplea
i. La base 2
ii. La base 8
iii. La base 16
3.2. Sistema binario natural
Incluye únicamente dos dígitos, el 0 y el 1. No requiere transformación para su representación
interna
OPERACIONES

1.Traducción entre binario y decimal.


Para pasar de notación binaria a decimal se utiliza la expresión polinómica extensa. El paso de
decimal a binario se realiza en dos fases (para la parte entera y la decimal).

• La parte entera se obtiene por sucesivas divisiones por dos del número de partida . Los
restos de estas divisiones y el último cociente constituyen el número binario
o El bit más significativo es el último cociente.
• La parte fraccionaria se obtiene por sucesivas multiplicaciones por 2 del número de partida
y de la parte fraccionaria que se obtiene en cada producto. La parte entera de cada
resultado (0 o 1) irá componiendo el número binario
o Puede que un número racional que se representa completamente en una base deba
ser representado mediante truncamientos y aproximaciones en otra base.
2-Operaciones aritméticas y lógicas
Las operaciones aritméticas básicas con la suma, resta, multiplicación y división.
Suma aritmética Resta aritmética Multiplicación División
0+0=0 0-0=0 0*0=0 0/0=Indeterminado
0+1=1 0-1=1, acarreo=-1 0*1=0 0/1=0
1+0=0 1-0=1 1*0=0 1/0=infinito
1+1=0, acarreo=1 1-1=0 1*1=1 1/1=1

• En base 2 multiplicar por 2, en base 10, es como insertar un cero por la derecha del
número binario
• En base 2 dividir por s, en base 10, es como desplazar el punto decimal un lugar a la
izquierda.
Efectuar operaciones en binario puede producir desbordamientos, cuando la magnitud resultante
excede la capacidad de representación del registro destino. Debe controlare también el signo del
resultado.
Las operaciones lógicas son operaciones que se aplican bit a bit. Las más significativas on OR,
AND y NOT
• Unión o suma lógica (puerta OR)

• Intersección o producto lógico (puerta AND)


• Negación lógica (puerta NOT)

• Negación de la OR (puerta NOR)

• Negación de la AND (puerta NAND)

• Puerta XOR (OR exclusivo)

3. 3. Representación de complementos
Por su capacidad de convertir las restas en sumas la representación en complementos binarios se
utiliza para simplificar la circuitería de la AUL, de este modo no tendrá que incorporar un restado

COMPLEMENTO A LA BASE MENOS 1 (A UNO SI LA BASE ES 2)


Dado un número N expresado en base b, el complemento a b -1 para números de m dígitos,
denotado como Cb-1,m N N es la cantidad que resulta de restarle a b m-1 el número N.

• Para calcular b m-1 repetir b-1 m veces

El complemento se expresa por tanto como Cb-1,m N= bm-1 – N

(Un método de hacer ese cálculo es trabajar con los números en decimal y, si lo deseo,
luego pasar el resultado a binario)
Para restar un número de otro, ambos del mismo tamaño m, basta con sumar al minuendo
el complemento a la base menos uno del sustraendo para n dígitos.
• Si se produce acarreo se descarta y se suma 1 al resultado obtenido
• Si no se produce acarreo significa que el resultado es negativo y debe volver a
calcularse el complemento.
o Cuando trabajo en decimal el número que deberé quitar, restar, en caso de
haber acarreo será bm =10m => m= número de dígitos
---------------------------------------------------------------------------------------------------------------
REGLA PRÁCTICA: Podemos proceder de esta otra forma.
i. Pasamos los dos números a binario. El número de dígitos mayor me dirá, en caso
de ser superarlo, si ha habido acarreo
Ejemplo: ¿77 - 42?
• 77 = 1001101 (7 dígitos) / 42=101010 (6 dígitos)
o No he contado el de signo en ninguno de los dos casos
ii. Cálculo el C1 del sustraendo
a. Complemento cada bit.
b. En caso de ser positivo supongo un bit de signo implícito (0) y debo añadirlo
y complementarlo también
Ejemplo. ¿C1(42)?

• 42 =10 10 10
• 42 = 0 10 10 10 (Hemos añadido el bit de signo)
• C1(42) = 10 10 10 1
iii. Sumo al minuendo el C1 del sustraendo.
Ejemplo ¿77 + C1(42)?

• 1 0 0 1 1 0 1 + 1 0 1 0 1 0 1 = 1 0 1 0 0 0 1 0 (8 bits => ha habido acarreo, el bit más


significativo)
iv. Trato el acarreo en caso de haberlo
a. HAY ACARREO
i. Cuando hay acarreo elimino el bit más significativo.
ii. Sumo 1 al número resultante
iii. El valor obtenido es el resultado de la resta
1. El bit de signo si es 0 es eliminado del resultado
Ejemplo

• 1 0 1 0 0 0 1 0=>0 1 0 0 0 1 0 (Elimino el bit más significativo)


• 0 1 0 0 0 1 0 + 1 = 0 1 0 0 0 1 1 (sumo 1=
• 1 0 0 0 1 1 (El bit de signo es eliminado del resultado)
b. NO HAY ACARREO
i. El número obtenido vuelve a complementarse.

--------------------------------------------------------------------------------------------------------
Ejemplo. Calcular 77-42 trabajando en decimal

• Cálculo C1(42)
o N=42, b=10, m=2 (el valor que tomo para tratar el acarreo)
o C1 =102 – 1-42 = 57
• Realizo la suma 77+C1(42)=77+57=134
o Como , en esta nueva cantidad, el númer de cifras es b’=3>2 se ha
producido acarreo.
• Trato el acarreo
o La cantidad que debo restar al resultado obtenido es b m =102 =100
o Efectúo la resta134-100=34
o Sumo 1 al resultado. 34+1 =35
▪ 77-42 =35
COMPLEMENTO A LA BASE (A DOS SI LA BASE ES DOS)

Dado un número N expresado en base b, el complemento a b para m dígitos es el número que


resulta de restar N a bm Observar que en este caso no se resta 1.

Cb-1,m N= bm – N
• Para restar dos números de tamaño m le sumo al minunedo el complemento a la base
del sustraendo para m dígitos
o Si hay acarreo se descarta (el número que resto es bm )
o Si no hay acarreo calculo el complemento el resultado obtenido.
Ejercicio. Calcula la operación 77-42
3.4. Sistemas intermedios
Los sistemas intermedios permiten una traducción fácil hacia y desde el sistema binario
A. Octal
Base igual a 8, los dígitos son {0, … 7} El procedimiento más sencillo para pasar de
binario a octal es agrupar el número binario en grupos de 3 comenzando desde el punto
decimal y avanzando hacia la izquierda para la cantidad entera y hacia la derecha para la
fraccionaria.
• Si el número de cifras no es múltiplo de 3 se tomarán ceros hasta formar una terna
B. Hexadecimal
Base igual a 16, los dígitos son {0,...9,A,B,C,D,F}. El paso de binario a octal se realiza
agrupando los dígitos en grupos de cuatro.
4.REPRESENTACIÓN INTERNA DE LA INFORMACIÓN
La ALU procesa agrupaciones de bits a las que denomina palabras. Los códigos utilizados
en E/S no suelen ser los más idóneos para efectuar operaciones aritméticas. Por ello en la
representación interna suelen usarse códigos como el binario
Al pasar los datos numéricos de formato E/S a formato interno se obtiene mayor grado de
compactación y un formato más adecuado para las operaciones aritméticas. Prácticamente
toda la información que entra o sale del ordenador sufre un proceso de transformación
entre códigos de E/S y códigos de representación interna.

4.1.-Representación interna de los datos

A) REPRESENTACIÓN INTERNA DE DATOS ENTEROS

1. Con signo

Se representa el valor absoluto del número entero en binario. Si el ancho de palabra es


de n bits, se usa al complemento para codificar el módulo del número que podrá
representar 2n valores diferentes.
• El rango es: 0<=x<= 2n
2. Con signo
Se reserva un bit para el signo y los demás para la magnitud
A) SIGNO Y MAGNITUD
Consiste en añadir un bit adicional que representa el signo. Este bit cuando sea 0 indicará
un número positivo y si es 1 un número negativo.
Pueden representarse 2n-1 cantidades diferentes con signo positivo y negativo

• El cero tiene dos representaciones de signo + y -


B) COMPLEMENTOS
a. Complemento a 1
El valor del bit an-1 determina el signo. Vale 0 para los positivos y 1 para los negativos. Las
cantidades se codifican así.
♦ Para cantidades positivas se utiliza el signo magnitud con un cero.
♦ Para cantidades negativas se utiliza el complemento a 1 para n-1 bits lo que supone
colocar un 1 para el signo.
Se pueden representar 2n magnitudes diferentes con signo positivo y negativo. El rango es
el siguiente: -(2n-1 ) <=x<= (2n-1 )

b. Complemento a 2
Es como el complemento a 1
• Para las cantidades positivas seguimos usando signo magnitud
• El bit último o de mayor peso determina el rango
Se suprime la doble representación del cero.
representación sesgada.
Consiste en sumarle al número entero que deseamos representar una constante o sesgo
cuyo valor, dado un ancho de representación de n bits, suele ser 2n-1

• Para números x tales que -(2n-1 )<=(2n-1 – 1), el número resultante siempre será
positivo
Esta notación también se denomina en exceso de M, donde M=2 n-1

3.Correspondencia entre convenios


Se llegan a las siguientes conclusiones
• El mayor número positivo qe se puede almacenar siempre es 2n-1 – 1
• En signo magnitud y C1 hay dos representaciones del cero
• En C1 el menor número negativo es -(2n-1 – 1)
• El C2 representa respecto al C1 dos ventajas.
o Existe una única representación del cero
o El menor número representable es –2n-1 .
• El C1 se calcula más fácilmente que el C2
4.2.-Operaciones con números enteros
A SIGNO. MAGNITUD
Sean los números N1 y N2 representados con n bits N1=s1m1 y N2=s2m2, siendo si el
signo y mi el valor absoluto.
I) SUMA Y RESTA

Pueden presentar distintas situaciones si queremos halla Nr=N1+N2


• Si s1=s2 para sumar se suman en binario las magnitudes y el signo es igual que el
de los operandos
o Si el resultado supera a 2n-1 - 1 se produce desbordamiento. Se comprueba
viendo que el acarreo del bit más significativo es 1
• Si s1 <>s2 no puede producirse desbordamiento. El resultado es.
o Si m1<m2 entonces mr=m2-m1 y sr=s2
o Si mi>m2 entonces mr=m1-m2 y sr=s1
La resta es como la suma, pero cambiando el signo s2 del sustraendo

II) MULTIPLICACIÓN Y DIVISIÓN

Para calcular N1*N2 se multiplican las cantidades m1 y m2. Se producirá desbordamiento


si el resultado supera 2n-1 – 1 pero la gestión es más complicada que antes.
Para el signo se dan dos casos

 Si s1=s2 entonces sr=0


 Si s1<>s2 entonces sr=1
Para la división se obtiene el cociente entero de m1/m2 . No puede producirse
desbordamiento.

• El signo igual que en la multiplicación


B) COMPLEMENTO A 1

• Cuando el número es positivo la representación con n bits será en signo magnitud


N=sm
• Si es negativo se emplea un bit para el signo y los n-1 restantes en C1
SUMA Y RESTA

Para calcular Nr=N1+N2 se suman los n bits de ambos números. Si hay acarreo se añade
un bit a la cantidad resultante.
• Si los dos números tienen igual signo se estará atento al desbordamiento que se
detecta viendo si el signo resultante coincide con el de los números. Si no coincide
se debe cambiar
MULTIPLICACION Y DIVISION

• Para calcular Nr=N1*N2 se cumplirá que abs(Nr)=abs(N1)*abs(N2 y puede


producirse desbordamiento, pero no puede gestionarse con un único bit.
• En cuanto al signo debe tenerse en cuenta que.
o Si s1=s2=0 el signo del resultado será sr=0.
▪ Para calcular el producto se multiplican las magnitudes en binario
natural
o Si s1=0 y s2=1 (o al revés) el resultado será negativo (sr=1) y para hallarlo
▪ Se le calcula el C1 al número negativo
▪ Se multiplican las magnitudes
▪ Se hace el complemento al resultado
o Si s1=s2=1 el resultado es positivo. Se efectúa así
▪ Se calcula el complemento a 1 a ambos números
▪ Se multiplican las magnitudes
• El método es similar al producto. No puede haber desbordamiento
C)COMPLEMENTO A 2
Es equivalente al C1, pero recordando que los acarreos de la suma del último bit se
ignoran, es decir no hace falta sumar 1.

• Para obtener N1+N2 se suman los bits de ambos números y si hay acarreo en el
último bit se ignora
Cuando los dos signos sean iguales debe estarse atento al desbordamiento que se detecta
comprobando si el signo resultante coindice con el de partida, de no ser así se enciende el
bit de acarreo

• Para obtener N1-N2 se calcula el C2 del sustraendo y se efectuar a la suma


• El producto y cociente son idénticos al C1.

4.3.-Representación interna de datos reales


Si se desea representar magnitudes con parte fraccionaria es preciso habilitar una forma
de representar la posición que ocupa la coma fraccionaria
Si con una representación binaria es posible representar un rango de enteros positivos y
negativos centrados en el cero, suponiendo la existencia de una coma en una posición
binaria fija con este formato podríamos representar números con parte fraccionaria.

• Este enfoque tiene el problema de no poder adaptarse a magnitudes fuera del


rango, por ejemplo, números muy grandes o fracciones muy pequeñas.
La solución es lo que se conoce como notación científica. La representación de un número
N sería
N=M*BE Donde M es la mantisa, B la base y E el exponente. Conocida la base podemos
representar el numero con solo tres campos: signo, mantisa y exponente.

REPRESENTACIÓN EN COMA FLOTANTE


La notación exponencial se construye combinando en una misma palabra varios campos
en formato binario. El más común es
signo exponente mantisa
A0 a1 …......................................................................am am+1 …..........................an-1

• El bit más a la izquierda es el signo de la mantisa que vale 0 para los positivos y 1
para los negativos
• Usamos m bits para el exponente y n-m-1 para la mantisa
• La base esta implícita, el exponente se suele codificar en notación binaria sesgada y
la mantisa en binario natural
Para obtener la mayor precisión la mantisa se almacena en el formato normalizado. Esta
normalización implica que el primer bit significativo de la mantisa ocupe el primer bit
dedicado a su representación.
• Esto provoca que siempre sea am+1=1 con lo que ya no es necesario almacenar ese
bit que se considera implícito=>Podemos dedicar a la mantisa n-m bits uno de los
cuales no se guarda.
Distinguimos la mantisa entera, se supone que la coma fraccionaria está a la derecha del
último digito, y la mantisa fracción, la coma se supone a la izquierda del primer digito.
Esta representación no contempla un valor para el 0 ni para cantidades singulares como el
infinito, pero en la práctica esto puede incluirse.
Destacamos los siguientes conceptos
1. Se produce desbordamiento (overflow) cuando una operación aritmética da lugar a
un número colocado en la recta a la izquierda del menor número representable o a
la derecha del mayor.
2. Se produce desbordamiento a cero (underflow) cuando el valor absoluto de la
magnitud que se desea representar cae por debajo de un valor umbral
Con la notación en coma flotante no se representan más valores individuales que con otras
notaciones. Al contrario que con la coma fija los valores no están espacio nados por igual
en la recta

• Están más próximos cerca del cero.

ESTANDAR IEEE 754


En un programa de ordenador las instrucciones aritméticas que utilizan cálculos en coma
flotante pueden ejecutarse de dos formas.

• Mediante emulación por software a cargo del traductor del lenguaje de


programación
• Mediante la ejecución directa de las instrucciones de coma flotante por el hardware
del ordenador
Tanto en un caso como en otro si cada fabricante de CPU utiliza un formato distinto se
dificultarán los intercambios de datos. Para evitar estos problemas y facilitar la
portabilidad de los programas de un procesador a otro el IEEE propuso el formato IEEE
754 estándar ampliamente adoptado
I) Estructura
IEEE754 usa notación exponencial en la forma N=M*B E con base B=2 implícita por lo
que solo almacena mantisa y exponente. De los bits almacenados se reserva uno para el
signo y el resto para el exponente y la mantisa.
• El exponerte se codifica en representación sesgada, donde el sesgo es sg=2 m-1 , m es
le número de bits con que se representa el exponente. El valor guardado en el
campo del exponente será e=E+sg
• La mantisa se almacena en posición normalizada, esto es, con el primer bir igual a
1 e implícito.
II)Casos especiales

• Para mejorar la capacidad de representación cuando el número que se desea


representar requiere un exponente inferior al mínimo con ancho de exponente de 8
se permite el almacenamiento de la mantisa en forma no normalizada
• Para representar el cero se ponen todos los bits del campo del exponente y de la
mantisa igual a cero.
• Si todos los bits del campo de exponente son 1, el dato representa
o Si la mantisa también es cero: más o menos infinito (dependiendo del signo)
o Si la mantisa no es cero: un valor NaN (Not a Number) de los que existe dos
tipos
▪ Un NaN indicador que señala una excepción debido a una operación
fallida
▪ Un NaN que indica operaciones especiales. Se produce en
operaciones como restas o productos con infinito.
IV)Redondeo
Cuando el número de cifras significativas excede la capacidad de almacenamiento se han
de efectuar aproximaciones (redondeos o truncamientos)
Los resultados intermecios sobre la mantisa se almacenan en un registro más grande
(representación ampliada). Cuando es necesario el resultado final se desechan los bits
extra
El IEEE 754 propone el método de redondeo conocido como redondeo al más próximo Se
toma el valor representable más próximo al resultado

V)Valor límite y tamaño

Partimos de un tamaño de n bits de los que se me dedican al exponente y uno al signo.


• El mayor valor de la mantisa será 1, 11…. con n-m-1 posiciones decimales.
• El menor valor de la mantisa normalizada será 1,000... con n-m-1 posiciones
decimales
• El mayor valor de la mantisa desnormalizada será 0,111. con n-m-1 posiciones
decimales
• El menos valor de la mantisa desnormalizada será 0, 0000.1 con con n-m-1
posiciones decimales
El estándar define dos formatos
• Formato simple de 32 bits con 8 bits de exponente
• Formato doble de 64 bits con 11 bits de exponente
Los dos formatos incluyen bits adicionales de exponente (rango ampliado) y de mantisa
(precisión ampliada) y se utilizan para cálculos intermedios. Al tener mayor precisión se
reduce la posibilidad de que el resultado se vea afectado por un error de redondeo
5.CÓDIGOS DE E/S
Dado un conjunto origen de símbolos que se han de representar, lo denotaremos A, a cada
símbolo se le puede asociar una combinación arbitraria de señales binarias del conjunto
imagen al que denotaremos B y que suele constar de palabras del mismo tamaño n.
Cumpliéndose que B=VR 2,n = 2n
Un código de E/S se define como una correspondencia arbitraria entre los conjuntos A y
B. Si las palabras de B tienen todo el mismo tamaño este tamaño viene condicionado por el
cardinal de A lo que a si vez depende de las características del dispositivo de E/S
En general dado un cardinal m del conjunto origen el ancho de palabra, n, del conjunto
imagen debe cumplir n>=log2 (m)

a) BCD
No es en realidad un código de E/S sino una forma de codificar los símbolos numéricos
{0,...9} que se emplean en varios códigos de E/S, entre los que figuran EBCDIC y ASCII
BCD divide cada octeto en dos mitades (nibble). Cada nibble codifica en binario una cifra
del 0 al 9.

b) EBCDIC
Es conocido como código BCD extendido para intercambio de información. Tiene como
objetivo la representación de caracteres alfanuméricos. Ha sido utilizado por IBM, pero
con la popularidad del pc se prefirió el estándar ASCII
EBCDIC es un código BCD de 4 bits al que se le han añadido otros 4 para poder
representar un amplio conjunto de signos

c) ASCII
Utiliza agrupaciones de 7 bits con lo que pueden representarse 128 símbolos. Incluye todas
las letras del alfabeto inglés y símbolos de puntuación. Los bits 1 a 4 son de los caracteres
numéricos BCD. La única diferencia entre mayúsculas y minúsculas es el bit 6
Las combinaciones 000xxx y 001xxx codifican 32 caracteres de control de
comunicaciones. ASCII es el código más difundido no solo en E/S sino también en
telemática

d) UNICODE
Es un sistema de codificación de longitud fija para caracteres que incluye caracteres e
multitud de lenguas. Se basa en el conjunto de caracteres ASCII
6.CÓDIGOS DETECTORES Y CORRECTORES DE ERRORES
6.1.-El ruido y sus efectos. Codificación para la protección.

El ruido en la comunicación de información produce errores.


• Tasa de error en bits. Es la relación entre el número de bits erróneos que llegan al
receptor en un intervalo de tiempo y el número total de bits emitidos en ese tiempo.
o La medida de esa magnitud debe hacerse en un intervalo suficientemente
largo. La ITU-T recomienda 15 minutos
o TEbits Bits erróneos / Total bits
• Tasa de error residual. Relación entre el número de bits erróneamente recibidos y
no detectados o corregidos en un periodo de tiempo.
o TEresidual =Bits erróneos no detectados / Total bits
Ante la imposibilidad de eliminar los errores surge la necesidad de de detectarlos para que
el mensaje emitido pueda reconstruirse.
Los sistemas utilizados para la protección pasan por la codificación. El mensaje original se
codifica en otro que es el que se transmite, la diferencia entre ambos está en que el nivel de
redundancia del mensaje enviado es superior. Esto supone una seguridad adicional

6.2 Distancia de HAMMING

En transmisión de datos se suele usar códigos de igual longitud. En ellos resulta de interés
el concepto de distancia de Haming o número de caracteres en que difieren dos palabras.
En el caso de los códigos binarios la distancia de Haming entre las palabras de código es el
número de elementos binarios en qué estas palabras difieren.
La eficacia de un código de detección/corrección de errores depende de la distancia de
Hamming mínima que puede haber entre dos cualesquiera de sus palabras

• Peso de un error es el número de bits alterados en la transmisión, un error de peso


p será detectado por un código de distancia mínima p+1 y corregible si la distancia
mínima es (2*p)+1
Dmd = p+1 Dmc = (2*p)+1

6.3. Comprobación de la paridad


I) Paridad lineal de un bit=>Supone la adicion de un número extra de bits, en este
caso 1, cuyo valor viene determinado por el de los otros
a. Par:número de bits 1 par (incluyendo el de paridad)
b. Impar:numero de bits 1 impar (incluyendo el de paridad)
Este método provoca una disminución de la capacidad del canal de solo un 12.5%, con
palabras de 7 bits + 1 paridad.
Como la distancia mínima es 2 es incapaz de detectar un número par de errores ni puede
determinar la posición del bit erróneo
II)Paridad longitudinal y transversal (por bloques) o bidimensional =>Consiste en
encolumnar en forma matricial un determinado número de caracteres formando bloques
que son enviados por el sistema de transmisión
Si únicamente falla un bit es posible detectar y corregir el error. Como presenta una
distancia mínima de 3 puede detectar errores más complejos

6.4. Códigos cíclicos


Incormporan como bits de control el resultado de un cálculo basado en la operación
modulo. El algoritmo empleado es.

• Se considera que los datos que se van a codificar son coeficientes de un polinomio
(por ejemplo 101101 ->1x5 +0x4 +1x3 +1x2 +0x1 +1x0 Este polinomio se denota D(x) y
tendrá d bits, tamaño del paquete de datos. Por tanto, el grado será d-1
• Emisor y receptor se ponen de acuerdo en el uso de un polinomio generador
(denotado G(x)) de grado r.
• Se añaden r bits puestos a cero al extremo inferior del paquete de datos de forma
que ahora el tamaño es d+r.
o Añadir r bits por la derecha equivale a realizar el producto P(x)=x r*D(x)
• Se divide la serie de bits correspondiente a P(x) por G(x) empleando la división por
módulo 2.
• El resto R(x) se sustrae empleando la sustracción en modulo 2, equivalente a XOR)
de P(X) con lo que el resultado es divisible por G(x). Este resultado es la palabra de
código T(x)
• El receptor intenta dividir C(x) por G(x) la condición de error es que el resto sea
distinto de cero. En ese caso se pide de nevo la transmisión
6.5 Códigos de Hammint
Son un tipo de códigos de control de paridad en el que los dígitos de paridad se intercalan
en la palabra de manera que se puedan identificar los posibles bits erróneos.
Presentan una distancia mínima de 3, pueden corregir un error, y pueden usar parida par
impar
Reglas de composición para palabras de código de Hamming de distancia 3 y paridad par

• Si la palabra original de datos tiene m bits se necesitan h bits de paridad de forma


que se ha de cumplir que 2h>=m+h+1
• Los bits se numeran de izquierda a derecha comenzando por 1.
• En las posiciones que son potencias de dos se intercalan los bits de paridad dejando
el resto de los bits de datos
• Cada bit de paridad par se calcula a partir de una serie de bits de datos, pero no a
partir de ningún otro bit de paridad.
• Un bit de datos bn es comprobado por los bits de paridad bi,bj…,bk de forma que
n=i+j+--+k
o Un bit de datos es comprobado por aquellos bits de paridad cuyas posiciones
son la descomposición en potencia de dos distintas, de la posición de bit de
datos
El emisor envía la palabra de código al receptor, esta comprueba las ecuaciones de paridad
y en el hipotético caso de que un bit haya sufrido un cambio puede detectar su posición
restaurándola al valor inicial
TAMAÑO DE LOS CÓDIGOS DE HAMMING

A los códigos de Hamming que cumplen la relación 2h=n+1=m+h+1 se les denomina optimos en
contraste con aquellos otros que utilizan menos bits de datos de los que podrían usar con los bits de
control disponibles

También podría gustarte