2.5: Detalle- ASCII
- Page ID
- 82287
\( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)
\( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)
\( \newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\)
( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\)
\( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)
\( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\)
\( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)
\( \newcommand{\Span}{\mathrm{span}}\)
\( \newcommand{\id}{\mathrm{id}}\)
\( \newcommand{\Span}{\mathrm{span}}\)
\( \newcommand{\kernel}{\mathrm{null}\,}\)
\( \newcommand{\range}{\mathrm{range}\,}\)
\( \newcommand{\RealPart}{\mathrm{Re}}\)
\( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)
\( \newcommand{\Argument}{\mathrm{Arg}}\)
\( \newcommand{\norm}[1]{\| #1 \|}\)
\( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)
\( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\AA}{\unicode[.8,0]{x212B}}\)
\( \newcommand{\vectorA}[1]{\vec{#1}} % arrow\)
\( \newcommand{\vectorAt}[1]{\vec{\text{#1}}} % arrow\)
\( \newcommand{\vectorB}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)
\( \newcommand{\vectorC}[1]{\textbf{#1}} \)
\( \newcommand{\vectorD}[1]{\overrightarrow{#1}} \)
\( \newcommand{\vectorDt}[1]{\overrightarrow{\text{#1}}} \)
\( \newcommand{\vectE}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash{\mathbf {#1}}}} \)
\( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)
\( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)
\(\newcommand{\avec}{\mathbf a}\) \(\newcommand{\bvec}{\mathbf b}\) \(\newcommand{\cvec}{\mathbf c}\) \(\newcommand{\dvec}{\mathbf d}\) \(\newcommand{\dtil}{\widetilde{\mathbf d}}\) \(\newcommand{\evec}{\mathbf e}\) \(\newcommand{\fvec}{\mathbf f}\) \(\newcommand{\nvec}{\mathbf n}\) \(\newcommand{\pvec}{\mathbf p}\) \(\newcommand{\qvec}{\mathbf q}\) \(\newcommand{\svec}{\mathbf s}\) \(\newcommand{\tvec}{\mathbf t}\) \(\newcommand{\uvec}{\mathbf u}\) \(\newcommand{\vvec}{\mathbf v}\) \(\newcommand{\wvec}{\mathbf w}\) \(\newcommand{\xvec}{\mathbf x}\) \(\newcommand{\yvec}{\mathbf y}\) \(\newcommand{\zvec}{\mathbf z}\) \(\newcommand{\rvec}{\mathbf r}\) \(\newcommand{\mvec}{\mathbf m}\) \(\newcommand{\zerovec}{\mathbf 0}\) \(\newcommand{\onevec}{\mathbf 1}\) \(\newcommand{\real}{\mathbb R}\) \(\newcommand{\twovec}[2]{\left[\begin{array}{r}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\ctwovec}[2]{\left[\begin{array}{c}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\threevec}[3]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\cthreevec}[3]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\fourvec}[4]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\cfourvec}[4]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\fivevec}[5]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\cfivevec}[5]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\mattwo}[4]{\left[\begin{array}{rr}#1 \amp #2 \\ #3 \amp #4 \\ \end{array}\right]}\) \(\newcommand{\laspan}[1]{\text{Span}\{#1\}}\) \(\newcommand{\bcal}{\cal B}\) \(\newcommand{\ccal}{\cal C}\) \(\newcommand{\scal}{\cal S}\) \(\newcommand{\wcal}{\cal W}\) \(\newcommand{\ecal}{\cal E}\) \(\newcommand{\coords}[2]{\left\{#1\right\}_{#2}}\) \(\newcommand{\gray}[1]{\color{gray}{#1}}\) \(\newcommand{\lgray}[1]{\color{lightgray}{#1}}\) \(\newcommand{\rank}{\operatorname{rank}}\) \(\newcommand{\row}{\text{Row}}\) \(\newcommand{\col}{\text{Col}}\) \(\renewcommand{\row}{\text{Row}}\) \(\newcommand{\nul}{\text{Nul}}\) \(\newcommand{\var}{\text{Var}}\) \(\newcommand{\corr}{\text{corr}}\) \(\newcommand{\len}[1]{\left|#1\right|}\) \(\newcommand{\bbar}{\overline{\bvec}}\) \(\newcommand{\bhat}{\widehat{\bvec}}\) \(\newcommand{\bperp}{\bvec^\perp}\) \(\newcommand{\xhat}{\widehat{\xvec}}\) \(\newcommand{\vhat}{\widehat{\vvec}}\) \(\newcommand{\uhat}{\widehat{\uvec}}\) \(\newcommand{\what}{\widehat{\wvec}}\) \(\newcommand{\Sighat}{\widehat{\Sigma}}\) \(\newcommand{\lt}{<}\) \(\newcommand{\gt}{>}\) \(\newcommand{\amp}{&}\) \(\definecolor{fillinmathshade}{gray}{0.9}\)ASCII, que significa “The American Standard Code for Information Interchange”, fue introducido por el American National Standards Institute (ANSI) en 1963. Es el código de caracteres más utilizado.
ASCII es un código de siete bits, que representa los 33 caracteres de control y 95 caracteres de impresión (incluido el espacio) en la Tabla 2.2. Los caracteres de control se utilizan para señalar condiciones especiales, como se describe en la Tabla 2.3.
Caracteres de control | Dígitos | Mayúscula | minúscula | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
HEX | DIC | CHR | Ctrl | HEX | DIC | CHR | HEX | DIC | CHR | HEX | DIC | CHR | |||
00 | 0 | NUL | ^@ | 20 | 32 | SP | 40 | 64 | @ | 60 | 96 | ' | |||
01 | 1 | SOH | ^A | 21 | 33 | ! | 41 | 65 | A | 61 | 97 | a | |||
02 | 2 | STX | ^B | 22 | 34 | “ | 42 | 66 | B | 62 | 98 | b | |||
03 | 3 | ETX | ^C | 23 | 35 | # | 43 | 67 | C | 63 | 99 | c | |||
04 | 4 | EOT | ^D | 24 | 36 | $ | 44 | 68 | D | 64 | 100 | d | |||
05 | 5 | ENQ | ^E | 25 | 37 | % | 45 | 69 | E | 65 | 101 | e | |||
06 | 6 | ACK | ^F | 26 | 38 | & | 46 | 70 | F | 66 | 102 | f | |||
07 | 7 | BEL | ^G | 27 | 39 | ' | 47 | 71 | G | 67 | 103 | g | |||
08 | 8 | BS | ^H | 28 | 40 | ( | 48 | 72 | H | 68 | 104 | h | |||
09 | 9 | HT | ^I | 29 | 41 | ) | 49 | 73 | I | 69 | 105 | i | |||
0A | 10 | LF | ^J | 2A | 42 | * | 4A | 74 | J | 6A | 106 | j | |||
0B | 11 | VT | ^K | 2B | 43 | + | 4B | 75 | K | 6B | 107 | k | |||
0C | 12 | FF | ^L | 2C | 44 | , | 4C | 76 | L | 6C | 108 | l | |||
0D | 13 | CR | ^M | 2D | 45 | - | 4D | 77 | M | 6D | 109 | m | |||
0E | 14 | POR LO | ^N | 2E | 46 | . | 4E | 78 | N | 6E | 110 | n | |||
0F | 15 | SI | ^O | 2F | 47 | / | 4F | 79 | O | 6F | 111 | o | |||
10 | 16 | DLE | ^P | 30 | 48 | 0 | 50 | 80 | P | 70 | 112 | p | |||
11 | 17 | DC1 | ^Q | 31 | 49 | 1 | 51 | 81 | Q | 71 | 113 | q | |||
12 | 18 | DC2 | ^R | 32 | 50 | 2 | 52 | 82 | R | 72 | 114 | r | |||
13 | 19 | DC3 | ^S | 33 | 51 | 3 | 53 | 83 | S | 73 | 115 | s | |||
14 | 20 | DC4 | ^T | 34 | 52 | 4 | 54 | 84 | T | 74 | 116 | t | |||
15 | 21 | NAK | ^U | 35 | 53 | 5 | 55 | 85 | U | 75 | 117 | u | |||
16 | 22 | SYN | ^V | 36 | 54 | 6 | 56 | 86 | V | 76 | 118 | v | |||
17 | 23 | ETB | ^W | 37 | 55 | 7 | 57 | 87 | W | 77 | 119 | w | |||
18 | 24 | PUEDE | ^X | 38 | 56 | 8 | 58 | 88 | X | 78 | 120 | x | |||
19 | 25 | EM | ^Y | 39 | 57 | 9 | 59 | 89 | Y | 79 | 121 | y | |||
1A | 26 | SUB | ^Z | 3A | 58 | : | 5A | 90 | Z | 7A | 122 | z | |||
1B | 27 | ESC | ^ [ | 3B | 59 | ; | 5B | 91 | [ | 7B | 123 | { | |||
1C | 28 | FS | ^\ | 3C | 60 | ¡ | 5C | 92 | \ | 7C | 124 | — | |||
1D | 29 | GS | ^] | 3D | 61 | = | 5D | 93 | ] | 7D | 125 | } | |||
1E | 30 | RS | ^^ | 3E | 62 | > | 5E | 94 | ^ | 7E | 126 | ~ | |||
1F | 31 | NOSOTROS | ^_ | 3F | 63 | ? | 5F | 95 | _ | 7F | 127 | DEL |
Encendido a 8 bits
En un contexto de 8 bits, los caracteres ASCII siguen un 0 principal y, por lo tanto, pueden ser pensados como la “mitad inferior” de un código más grande. Los 128 caracteres representados por códigos entre HEX 80 y HEX FF (a veces incorrectamente llamados “ASCII alto” de “ASCII extendido”) se han definido de manera diferente en diferentes contextos. En muchos sistemas operativos incluían las letras acentuadas de Europa Occidental y varias letras adicionales
HEX | DIC | CHR | Ctrl | Significado |
---|---|---|---|---|
00 | 0 | NUL | ^@ | Líder en blanco nulo en cinta de papel; generalmente ignorado |
01 | 1 | SOH | ^A | Inicio de rumbo |
02 | 2 | STX | ^B | Inicio de Text |
03 | 3 | ETX | ^C | Fin del texto; coincide con STX |
04 | 4 | EOT | ^D | Fin de transmisión |
05 | 5 | ENQ | ^E | ENQUISIACIÓN |
06 | 6 | ACK | ^F | Reconocer; respuesta afirmativa a ENQ |
07 | 7 | BEL | ^G | Bell; señal audible, una campana en las primeras máquinas |
08 | 8 | BS | ^H | Backspace; no destructivo, ignorado en el margen izquierdo |
09 | 9 | HT | ^I | Pestaña Horizontal |
0A | 10 | LF | ^J | Alimentación de línea; papel hacia arriba o cabezal de impresión hacia abajo; nueva línea en Unix |
0B | 11 | VT | ^K | Pestaña Vertical |
0C | 12 | FF | ^L | Form Feed; iniciar nueva página |
0D | 13 | CR | ^M | Retorno de carro; cabezal de impresión al margen izquierdo; nueva línea en Macs |
0E | 14 | ENTONCES | ^N | Desplazar hacia fuera; iniciar el uso del juego de caracteres alternativos |
0F | 15 | SI | ^O | Cambio de entrada; reanudar el uso del juego de caracteres predeterminado |
10 | 16 | DLE | ^P | Escape de enlace de datos; cambia el significado del siguiente carácter |
11 | 17 | DC1 | ^Q | Control de dispositivo 1; si se usa control de flujo, XON, OK para enviar |
12 | 18 | DC2 | ^R | Control de dispositivos 2 |
13 | 19 | DC3 | ^S | Control de dispositivo 3; si se usa control de flujo, XOFF, dejar de enviar |
14 | 20 | DC4 | ^T | Control de dispositivos 4 |
15 | 21 | NAK | ^U | Reconocer negativo; respuesta a ENQ |
16 | 22 | SYN | ^V | Inactividad sincrónica |
17 | 23 | ETB | ^W | Bloque de Fin de Transmisión |
18 | 24 | PUEDE | ^X | CANCEL; despreciar bloque anterior |
19 | 25 | EM | ^Y | Fin del Medio |
1A | 26 | SUB | ^Z | SUSTITUTO |
1B | 27 | ESC | ^ [ | EsCAPE; cambia el significado del siguiente personaje |
1C | 28 | FS | ^\ | Separador de archivos; escala más gruesa |
1D | 29 | GS | ^] | Separador de grupo; escala gruesa |
1E | 30 | RS | ^^ | Separador de registros; escala fina |
1F | 31 | NOSOTROS | ^_ | Separador de unidades; escala más fina |
20 | 32 | SP | SpACE; por lo general no se considera un carácter de control | |
7F | 127 | DEL | Delete; ignorado originalmente; retroceso a veces destructivo |
signos de puntuación. En las PC de IBM incluían caracteres de dibujo de líneas. Los Mac usaron (y aún usan) una codificación diferente.
Afortunadamente, la gente ahora aprecia la necesidad de interoperabilidad de las plataformas informáticas, por lo que los estándares más universales están llegando a favor. El código más común en uso para las páginas web es ISO-8859-1 (ISO-Latin) que utiliza los 96 códigos entre HEX A0 y HEX FF para varias letras acentuadas y signos de puntuación de las lenguas de Europa occidental, y algunos otros símbolos. Los 32 caracteres entre HEX 80 y HEX 9F están reservados como caracteres de control en ISO-8859-1.
La naturaleza aborrece el vacío. La mayoría de la gente no quiere 32 caracteres de control más (de hecho, de los 33 caracteres de control en ASCII de 7 bits, solo unos diez se usan regularmente en el texto). En consecuencia no ha habido fin de ideas para usar HEX 80 a HEX 9F. La convención más utilizada es la página de código de Windows de Microsoft 1252 (Latin I) que es la misma que ISO-8859-1 (ISO-Latin) excepto que 27 de los 32 códigos de control están asignados a caracteres impresos, uno de los cuales es HEX 80, el carácter de moneda euro. No todas las plataformas y sistemas operativos reconocen CP-1252, por lo que los documentos, y en particular las páginas Web, requieren una atención especial.
Más allá de 8 bits
Para representar las lenguas asiáticas, se necesitan muchos más caracteres. Actualmente hay un desarrollo activo de estándares apropiados, y generalmente se considera que el número total de caracteres que necesitan ser representados es menor de 65,536. Esto es afortunado porque muchos caracteres diferentes podrían representarse en 16 bits, o 2 bytes. Para mantenerse dentro de este número, las versiones escritas de algunos de los dialectos chinos deben compartir símbolos que se parezcan.
El candidato más fuerte para un código de caracteres estándar de 2 bytes hoy en día se conoce como Unicode.
Referencia
Son muchas las páginas Web que dan el gráfico ASCII, con extensiones a todos los idiomas del mundo. Entre los más útiles:
- Jim Price, con gráficos de 8 bits para PC y Windows, y varios enlaces adicionales http://www.jimprice.com/jim-asc.shtml
- Una breve historia de los códigos de carácter, con una discusión sobre la extensión a las lenguas asiáticas http://tronweb.super-nova.co.jp/characcodehist.html
- Página de inicio de Unicode http://www.unicode.org/
- Windows CP-1252 estándar, definitivo www.microsoft.com/globaldev/r... /sbcs/1252.htm
- CP-1252 comparado con:
- Unicode http://ftp.unicode.org/Public/MAPPIN...OWS/CP1252.TXT
- Unicódigo/html http://www.alanwood.net/demos/ansi.html
- ISO-8859-1/Mac OS http://www.jwz.org/doc/charsets.html