Codigo ASCII y UNICODE.docx

10
CÓDIGO ASCII ASCII, acrónimo de American Standard Code for Information Interchange (Código Normalizado Americano para el Intercambio de Información). Es un código alfanumérico universalmente aceptado, que asigna valores numéricos a las letras, números, signos de puntuación y algunos otros caracteres. Al normalizar los valores utilizados para dichos caracteres, ASCII permite que los ordenadores, equipos electrónicos y programas informáticos intercambien información. ASCII incluye 256 códigos divididos en dos conjuntos, estándar y extendido, de 128 cada uno. Estos conjuntos representan todas las combinaciones posibles de 7 u 8 bits, siendo esta última el número de bits en un byte. El conjunto ASCII básico, o estándar, utiliza 7 bits para cada código, lo que da como resultado 128 códigos de caracteres desde 0 hasta 127 (00H hasta 7FH hexadecimal). El conjunto ASCII extendido utiliza 8 bits para cada código, dando como resultado 128 códigos adicionales, numerados desde el 128 hasta el 255 (80H hasta FFH extendido). En el conjunto de caracteres ASCII básico, los primeros 32 valores están asignados a los códigos de control de comunicaciones y de impresora —caracteres no imprimibles, como retroceso, retorno de carro y tabulación— empleados para controlar la forma en que la información es transferida desde una computadora a otra o desde una computadora a una impresora. Los 96 códigos restantes se asignan a los signos de puntuación corrientes, a los dígitos del 0 al 9 y a las letras mayúsculas y minúsculas del alfabeto latino. Los códigos de ASCII extendido, del 128 al 255, se asignan a conjuntos de caracteres que varían según los fabricantes de computadoras y programadores de software. Estos códigos no son intercambiables entre los diferentes programas y computadoras como los caracteres ASCII estándar. Por ejemplo, IBM utiliza un grupo de caracteres ASCII extendido que suele denominarse conjunto de caracteres IBM extendido para sus

Transcript of Codigo ASCII y UNICODE.docx

CÓDIGO ASCII

ASCII, acrónimo de American Standard Code for Information Interchange (Código Normalizado Americano para el Intercambio de Información). Es un código alfanumérico universalmente aceptado, que asigna valores numéricos a las letras, números, signos de puntuación y algunos otros caracteres. Al normalizar los valores utilizados para dichos caracteres, ASCII permite que los ordenadores, equipos electrónicos y programas informáticos intercambien información.

ASCII incluye 256 códigos divididos en dos conjuntos, estándar y extendido, de 128 cada uno. Estos conjuntos representan todas las combinaciones posibles de 7 u 8 bits, siendo esta última el número de bits en un byte. El conjunto ASCII básico, o estándar, utiliza 7 bits para cada código, lo que da como resultado 128 códigos de caracteres desde 0 hasta 127 (00H hasta 7FH hexadecimal). El conjunto ASCII extendido utiliza 8 bits para cada código, dando como resultado 128 códigos adicionales, numerados desde el 128 hasta el 255 (80H hasta FFH extendido).

En el conjunto de caracteres ASCII básico, los primeros 32 valores están asignados a los códigos de control de comunicaciones y de impresora —caracteres no imprimibles, como retroceso, retorno de carro y tabulación— empleados para controlar la forma en que la información es transferida desde una computadora a otra o desde una computadora a una impresora. Los 96 códigos restantes se asignan a los signos de puntuación corrientes, a los dígitos del 0 al 9 y a las letras mayúsculas y minúsculas del alfabeto latino.

Los códigos de ASCII extendido, del 128 al 255, se asignan a conjuntos de caracteres que varían según los fabricantes de computadoras y programadores de software. Estos códigos no son intercambiables entre los diferentes programas y computadoras como los caracteres ASCII estándar. Por ejemplo, IBM utiliza un grupo de caracteres ASCII extendido que suele denominarse conjunto de caracteres IBM extendido para sus computadoras personales. Apple Computer utiliza un grupo similar, aunque diferente, de caracteres ASCII extendido para su línea de computadoras Macintosh. Por ello, mientras que el conjunto de caracteres ASCII estándar es universal en el hardware y el software de los microordenadores, los caracteres ASCII extendido pueden interpretarse correctamente sólo si un programa, computadora o impresora han sido diseñados para ello.

Historia del Código ASCII :

El código ASCII (siglas en inglés para American Standard Code for Information Interchange, es decir Código Americano (estadounidense) Estándar para el intercambio de Información )(se pronuncia Aski).

Fue creado en 1963 por el Comité Estadounidense de Estándares o "ASA", este organismo cambio su nombre en 1969 por "Instituto Estadounidense de Estándares Nacionales" o "ANSI" como se lo conoce desde entonces.

Este código nació a partir de reordenar y expandir el conjunto de símbolos y caracteres ya utilizados por ese entonces en telegrafía por la compañía Bell.

En un primer momento solo incluía las letras mayúsculas, pero en 1967 se agregaron las letras minúsculas y algunos caracteres de control, formando así lo que se conoce como US-ASCII, es decir los códigos del 0 al 127. Así con este conjunto de solo 128 caracteres fue publicado en 1967 como estándar, conteniendo todos lo necesario para escribir en idioma inglés.En 1981, la empresa IBM desarrolló una extensión de 8 bits del código ASCII, llamada "página de código 437", en esta versión se reemplazaron algunos caracteres de control obsoletos, por caracteres gráficos.

En 1986, se modificó el estándar para agregar nuevos caracteres latinos, necesarios para la escrituras de textos en otros idiomas, como por ejemplo el español, así fue como se agregaron los caracteres que van del ASCII 128 al 255.

Casi todos los sistemas informáticos de la actualidad utilizan el código ASCII para representar caracteres y textos

CÓDIGO UNICODE

Superconjunto de caracteres, basado en el conjunto ASCII, pero que utiliza una definición de dos bytes por carácter, en vez de uno; esto permite definir códigos de caracteres (o conjuntos de caracteres) con más de las 256 entradas posibles del estándar ASCII, dado que un solo byte puede definir 256 valores distintos, mientras que una palabra de dos bytes puede definir 65.536. Su definición es mantenida por el denominado Unicode Consortium, del que forman parte empresas como Adobe, Apple, IBM, Microsoft, Hewlett-Packard, Oracle, Nokia, NCR, Sun Microsystems y otras, líderes del mundo de la informática y las telecomunicaciones.

El estándar ISO, más amplio, utiliza palabras de 4 bytes, pero tiene en cuenta el código Unicode como un subconjunto (se trata de los 65.536 primeros caracteres del código ISO-10646).

Los caracteres de Unicode abarcan toda clase de tipografías y símbolos, desde los latinos hasta los asiáticos (pasando por símbolos matemáticos, de moneda y sistema Braille, entre otros), con un único valor identificativo, lo que evita tener que instalar conjuntos de caracteres específicos para cada alfabeto.

Historia del Código UNICODE

Antes de Unicode, había diferentes sistemas de codificación de caracteres para cada idioma, cada uno usando los mismos números (0-255) para representar los caracteres de ese lenguaje. Algunos (como el ruso) tienen varios estándares incompatibles que representan los mismos caracteres; otros idiomas (como el japonés) tienen tantos caracteres que precisan más de un byte. Intercambiar documentos entre estos sistemas era difícil porque no había manera de que un computador supiera con certeza qué esquema de codificación de caracteres había usado el autor del documento; el computador sólo veía números, y los números pueden significar muchas cosas. Para resolver estos problemas se diseñó Unicode.

El proyecto Unicode se inició a finales de 1987, tras conversaciones entre los ingenieros de Apple y Xerox: Joe Becker, Lee Collins y Mark Davis. Como resultado de su colaboración, en agosto de 1988 se publicó el primer borrador de Unicode bajo el nombre de Unicode88. Esta primera versión, con códigos de 16 bits, se publicó asumiendo que solo se codificarían los caracteres necesarios para el uso moderno.

Durante el año 1989 el trabajo continuó con la adición de colaboradores de otras compañías como Microsoft o Sun Microsystems. El Consorcio Unicode se formó el 3 de febrero de 1991 y en octubre de 1991 se publicó la primera versión del estándar. La segunda versión, incluyendo escritura ideográfica Han se publicó en junio de 1992.

Unicode Character Ranges:

0020 — 007F Basic Latin 2580 — 259F Block Elements00A0 — 00FF Latin-1 Supplement 25A0 — 25FF Geometric Shapes0100 — 017F Latin Extended-A 2600 — 26FF Miscellaneous Symbols0180 — 024F Latin Extended-B 2700 — 27BF Dingbats0250 — 02AF IPA Extensions 27C0 — 27EF Miscellaneous Mathematical Symbols-A02B0 — 02FF Spacing Modifier Letters 27F0 — 27FF Supplemental Arrows-A0300 — 036F Combining Diacritical Marks 2800 — 28FF Braille Patterns0370 — 03FF Greek and Coptic 2900 — 297F Supplemental Arrows-B0400 — 04FF Cyrillic 2980 — 29FF Miscellaneous Mathematical Symbols-B0500 — 052F Cyrillic Supplementary 2A00 — 2AFF Supplemental Mathematical Operators0530 — 058F Armenian 2B00 — 2BFF Miscellaneous Symbols and Arrows0590 — 05FF Hebrew 2E80 — 2EFF CJK Radicals Supplement0600 — 06FF Arabic 2F00 — 2FDF Kangxi Radicals0700 — 074F Syriac 2FF0 — 2FFF Ideographic Description Characters0780 — 07BF Thaana 3000 — 303F CJK Symbols and Punctuation0900 — 097F Devanagari 3040 — 309F Hiragana0980 — 09FF Bengali 30A0 — 30FF Katakana0A00 — 0A7F Gurmukhi 3100 — 312F Bopomofo0A80 — 0AFF Gujarati 3130 — 318F Hangul Compatibility Jamo0B00 — 0B7F Oriya 3190 — 319F Kanbun0B80 — 0BFF Tamil 31A0 — 31BF Bopomofo Extended0C00 — 0C7F Telugu 31F0 — 31FF Katakana Phonetic Extensions0C80 — 0CFF Kannada 3200 — 32FF Enclosed CJK Letters and Months0D00 — 0D7F Malayalam 3300 — 33FF CJK Compatibility0D80 — 0DFF Sinhala 3400 — 4DBF CJK Unified Ideographs Extension A0E00 — 0E7F Thai 4DC0 — 4DFF Yijing Hexagram Symbols0E80 — 0EFF Lao 4E00 — 9FFF CJK Unified Ideographs0F00 — 0FFF Tibetan A000 — A48F Yi Syllables1000 — 109F Myanmar A490 — A4CF Yi Radicals10A0 — 10FF Georgian AC00 — D7AF Hangul Syllables1100 — 11FF Hangul Jamo D800 — DB7F High Surrogates1200 — 137F Ethiopic DB80 — DBFF High Private Use Surrogates13A0 — 13FF Cherokee DC00 — DFFF Low Surrogates1400 — 167F Unified Canadian Aboriginal Syllabics E000 — F8FF Private Use Area1680 — 169F Ogham F900 — FAFF CJK Compatibility Ideographs16A0 — 16FF Runic FB00 — FB4F Alphabetic Presentation Forms1700 — 171F Tagalog FB50 — FDFF Arabic Presentation Forms-A1720 — 173F Hanunoo FE00 — FE0F Variation Selectors1740 — 175F Buhid FE20 — FE2F Combining Half Marks1760 — 177F Tagbanwa FE30 — FE4F CJK Compatibility Forms1780 — 17FF Khmer FE50 — FE6F Small Form Variants1800 — 18AF Mongolian FE70 — FEFF Arabic Presentation Forms-B1900 — 194F Limbu FF00 — FFEF Halfwidth and Fullwidth Forms1950 — 197F Tai Le FFF0 — FFFF Specials19E0 — 19FF Khmer Symbols 10000 — 1007F Linear B Syllabary1D00 — 1D7F Phonetic Extensions 10080 — 100FF Linear B Ideograms1E00 — 1EFF Latin Extended Additional 10100 — 1013F Aegean Numbers1F00 — 1FFF Greek Extended 10300 — 1032F Old Italic2000 — 206F General Punctuation 10330 — 1034F Gothic2070 — 209F Superscripts and Subscripts 10380 — 1039F Ugaritic20A0 — 20CF Currency Symbols 10400 — 1044F Deseret20D0 — 20FF Combining Diacritical Marks for Symbols 10450 — 1047F Shavian2100 — 214F Letterlike Symbols 10480 — 104AF Osmanya2150 — 218F Number Forms 10800 — 1083F Cypriot Syllabary2190 — 21FF Arrows 1D000 — 1D0FF Byzantine Musical Symbols

2200 — 22FF Mathematical Operators 1D100 — 1D1FF Musical Symbols2300 — 23FF Miscellaneous Technical 1D300 — 1D35F Tai Xuan Jing Symbols2400 — 243F Control Pictures 1D400 — 1D7FF Mathematical Alphanumeric Symbols2440 — 245F Optical Character Recognition 20000 — 2A6DF CJK Unified Ideographs Extension B2460 — 24FF Enclosed Alphanumerics 2F800 — 2FA1F CJK Compatibility Ideographs Supplement2500 — 257F Box Drawing E0000 — E007F Tags

Debido a que es una gran cantidad de caracteres, solamente se presentaran los:

0020 — 007F Basic Latin00A0 — 00FF Latin-1 Supplement0100 — 017F Latin Extended-A0180 — 024F Latin Extended-B

Referencias bibliográficas:

[1] Microsoft Student con Encarta Premium 2009 DVD[2] http://informatica.dgenp.unam.mx/recomendaciones/codigo-ascii [3] http://juanmancilla.wordpress.com/tag/codigo-ascii/ [4] http://www.ecured.cu/index.php/Lenguaje_Unicode [5] http://jrgraphix.net/research/unicode_blocks.php