Códigos Binarios de Representación de Datos

Anuncio
Códigos Binarios de
Representación de Datos
M. en C. Erika Vilches
Parte 1
Código Gray
•
No tiene pesos asignados a las posiciones de los
bits y no es un código aritmético.
•
Principal característica:
Muestra 1 solo bit cambiado de una
palabra del código a la siguiente en la
secuencia.
•
Encuentra aplicaciones en dispositivos de
entrada/salida y en algunos tipos de
convertidores analógicos a digital.
• Puede tener cualquier número de bits.
• Ejemplo de cambio de 1 solo bit: 3 a 4 =
0010 a 0110, mientras que en binario sería
de 0011 a 0100, un cambio de 3 bits
Tabla de código Gray a 4 bits
Binario a Gray
1. El bit mas significativo (más a la izquierda) en
código Gray es el mismo que el bit
correspondiente en el número binario
2. De derecha a izquierda, sumar cada par adyacente
de bits en binario para obtener el siguiente bit en
código Gray. Descartar los carries.
Ejemplo: Convertir el número binario 10110 a
código Gray
El código Gray es 11101
Gray a Binario
1. El bit mas significativo (más a la izquierda) en el
número binario es el mismo que el bit
correspondiente en código Gray
2. De derecha a izquierda, sumar cada bit binario
generado al bit en código Gray en la siguiente
posición adyacente. Descartar los carries.
Ejemplo: Convertir el código Gray 11011 a
número binario
El número binario es 10010
Ejemplos
•
Convertir el número binario 11000110 a código Gray
•
Convertir el código Gray 10101111 a binario
Ejercicio:
a) Convertir el número binario 101101 a código Gray
b) Convertir el código Gray 100111 a número binario
ASCII
• American Standard Code for Information
Interchange
• Universalmente aceptado
• Utilizado en la mayoría de las computadoras
y otros equipos electrónicos
• La mayoría de los teclados de computadora
están estandarizados con el código ASCII
•
Tiene 128 caracteres y símbolos representados por un
código binario de 7 bits
•
Se puede considerar que es un código de 8 bits con el
bit más significativo siempre en 0
•
•
Este código de 8 bits va de 00 a 7F en hexadecimal
•
Los demás caracteres son símbolos gráficos que se
pueden imprimir o desplegar. Incluyen las letras del
alfabeto (mayúsculas y minúsculas), los 10 dígitos
decimales, signos de puntuación, y otros símbolos
comúnmente utilizados
Los primeros 32 caracteres ASCII son comandos no
gráficos, no se despliegan, son usados para propósitos
de control (Ej: “null”, “line feed”, “start of text”,
“escape”, etc...) y permiten a los dispositivos
comunicarse (computadora, impresora, etc.)
Ejemplo:
Determine los códigos ASCII binarios que se envían desde el teclado de la
computadora cuando se escribe el siguiente texto. También exprese los
códigos en hexadecimal
Hola Mundo!
Símbolo
Binario
Hexadecimal
H
o
l
a
Espacio
M
u
n
d
o
!
1001000
1101111
1101100
1100001
0100000
1001101
1110101
1101110
1100100
1101111
0100001
48
6F
6C
61
20
4D
75
6E
64
6F
21
Ejercicio: Determine la secuencia de
códigos ASCII requerida por el siguiente
string y expréselos en hexadecimal.
Hello World!
ASCII Extendido
• 128 caracteres adicionales que IBM adopto
para uso en sus PCs.
• Debido a la popularidad de la PC, estos
carateres ASCII extendidos se han utilizado
en otras aplicaciones aparte de las PCs y se
han convertido en un estándar no oficial.
• Los caracteres de ASCII Extendido son
representados por un código de 8 bits (de
80 a FF hexadecimal)
Contiene caracteres en las siguientes categorías
generales:
1. Caracteres alfabéticos no ingleses
2. Símbolos de moneda no ingleses
3. Letras griegas
4. Símbolos matemáticos
5. Caracteres para gráficos
6. Caracteres para gráficos de barras
7. Caracteres sombreados
Exceso 3 BCD
• Utiliza 4 bits para representar los números
decimales del 0 al 9
• Deriva su nombre del hecho de que cada
representación decimal en el código Exceso
3 es mayor que el código BCD por 3
• Es un código sin pesos
• Se utiliza en algunas computadoras antiguas
Ejemplo: Codifique el número 127 en el
código Exceso 3
127 → 0100 0101 1010
• Su ventaja sobre BCD: Un número decimal
puede ser complementado a 9 (para
restarlo) tan fácilmente como un número
binario puede ser complementado a 1.
Izquierda: Complemento a 9.
Derecha: Complemento a 1
Unicode
•
Código para el intercambio de información
internacional
•
•
Alfabeto de 16 bits
•
Es el set de caracteres predeterminado de Java
actualmente.
Tiene la capacidad de codificar la mayoría de los
caracteres usados en cada lenguaje del mundo
•
Cada letra es relacionada con un punto de
código (code point)
•
Tiene el mismo punto de código sin importar
la fuente o tamaño utilizada
•
El punto de código es un número. Ej: U+0645.
- U+ significa Unicode
- 0645 es un número en hexadecimal.
•
Charmap (utileria de Windows 2000/XP)
permite conocer los puntos de código.
•
Ejemplo: Hello = U+0048 U+0065 U+006C
U+006C U+006F
Espacio de código Unicode
• Define dos métodos de mapeo
• UTF → Unicode Transformation Format
• UCS → Universal Character Set
• Los números en los nombres de las
codificaciones indican el número de bits para
UTF o el número de bytes para UCS
• UTF-8 (compatible con ASCII) y UTF-16 son
las codificaciones más comunes
• Si no sabe como decodificar, pone ?
¿Cómo saber la codificación?
•
E-mail: agregar en el encabezado
Content-Type: text/plain; charset=“UTF-8”
•
Página Web: el encabezado debe de empezar
de la siguiente manera:
<html>
<head>
<meta http-equiv=“Content-Type”
content=“text/html;charset=utf-8”>
Garantiza que se leerá antes de empezar a
desplegar los caracteres especiales de cada
lenguaje.
Descargar