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 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.) 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
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 1001000 48 o 1101111 6F l 1101100 6C a 1100001 61 Espacio 0100000 20 M 1001101 4D u 1110101 75 n 1101110 6E d 1100100 64 o 1101111 6F! 0100001 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 Tiene la capacidad de codificar la mayoría de los caracteres usados en cada lenguaje del mundo Es el set de caracteres predeterminado de Java actualmente.
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.