Compartir entrada

lunes, 22 de abril de 2013

El código ASCII

Otro de los preámbulos a nuestro primer curso de programación, además del manejo del pseudocódigo y de tener claro ciertos conceptos claves, es el conocimiento del código ASCII.




Números binarios
Foto tomada de freedigitalphotos.net

ASCII es el acrónimo inglés para American Standard Code for Information Interchange, o lo que es lo mismo, Código Estándar Estadounidense para el Intercambio de Información. Es un código de caracteres creado en 1963 por el ANSI (American National Standards Institute o Instituto Nacional Estadounidense de Estándares) ideado para evolucionar los códigos usados en telegrafía y cuya funcionalidad es representar numéricamente caracteres y símbolos, de tal forma que cualquier computador pueda entender esa información.

Una computadora solamente entiende de números, por lo que la inclusión de un estándar numérico para representar caracteres es algo fundamental.

El código ASCII es un código de 7 bits, es decir, siete 0 o 1, los cuales son la unidad mínima de información para un computador. El ASCII entró en vigor en un momento en que los computadores utilizaban grupos de 8 bits, es decir, un byte, el octavo bit es conocido como bit de paridad, el cual indica si ha habido un error o no en la transmisión de información.

El código ASCII comprende 128 caracteres, que van del 0 al 127.

El código ASCII no es necesario aprendérselo de memoria puesto que está en constante evolución y además cada vez van surgiendo nuevos estándares evolucionados de ésta forma de representación de caracteres para el envío de información. El código ASCII está basado en el alfabeto latino, por lo que la representación de caracteres de otras lenguas no están recogidas aquí.

Una de las más típicas funciones del código ASCII es la de poder escribir específicamente un carácter sin necesidad de teclearlo. Ejemplos claros son los caracteres que simbolizan el retorno de carro, el suprimir, el nulo o la tabulación, aunque también se pueden escribir letras del alfabeto, números y símbolos tales como los de puntuación o interrogación.

Prácticamente todos los lenguajes de programación vienen provistos de sentencias concretas para usar o representar en pantalla un caracter especificando su código ASCII.

Tipos de caracteres del código ASCII.

Los caracteres del código ASCII pueden ser divididos en dos clases:

Imprimibles – En éste conjunto entrarían todas las letras del alfabeto latino, números y símbolos de cualquier tipo, el “espacio” también está incluido. Es información que se puede mostrar, es decir, imprimir.

No imprimibles – Se corresponden con los primeros 32 caracteres del código ASCII y representan códigos de control del hardware o de un programa, algunos de ellos son el escape, el retorno de carro, cancelar, finalización, etc.

Variantes de ASCII

ASCII no es necesariamente el estándar usado universalmente, en la actualidad se han tenido que tener en cuenta multitud de caracteres más, por lo que tener un estándar basado solamente en 128 caracteres se ha ido quedando un poco obsoleto, no obstante han servido de punto de partida para el resto de estándares, respetándose siempre estos 128 primeros.

Así por ejemplo encontramos el ASCII Extendido, el cual continúa en el carácter 128 codificando caracteres especiales y adicionales a la tabla original llegando así a los 255 caracteres.

Tabla ASCII

Os dejo el recurso de varias formas, primero y principal la siguiente imagen que plasma perfectamente todo el código ASCII y ASCII Extendido. Muy recomendable para imprimir y tenerlo siempre a mano.

Click aquí para descargar

A continuación dejo la relación de los caracteres ASCII separada en sus dos grupos.

No imprimibles

00 = NULL ( Carácter nulo )
01 = SOH ( Inicio de encabezado )
02 = STX ( Inicio de texto )
03 = ETX ( Fin de texto, palo corazon barajas inglesas de poker )
04 = EOT ( Fin de transmisión, palo diamantes barajas de poker )
05 = ENQ ( Consulta, palo treboles barajas inglesas de poker )
06 = ACK ( Reconocimiento, palo picas cartas de poker )
07 = BEL ( Timbre )
08 = BS ( Retroceso )
09 = HT ( Tabulador horizontal )
10 = LF ( Nueva línea - salto de línea )
11 = VT ( Tabulador vertical )
12 = FF ( Nueva página - salto de página )
13 = CR ( ENTER - retorno de carro )
14 = SO ( Desplazamiento hacia afuera )
15 = SI ( Desplazamiento hacia adentro )
16 = DLE ( Escape de vínculo de datos )
17 = DC1 ( Control dispositivo 1 )
18 = DC2 ( Control dispositivo 2 )
19 = DC3 ( Control dispositivo 3 )
20 = DC4 ( Control dispositivo 4 )
21 = NAK ( Confirmación negativa )
22 = SYN ( Inactividad síncronica )
23 = ETB ( Fin del bloque de transmisión )
24 = CAN ( Cancelar )
25 = EM ( Fin del medio )
26 = SUB ( Sustitución )
27 = ESC ( Esc - escape )
28 = FS ( Separador de archivos )
29 = GS ( Separador de grupos )
30 = RS ( Separador de registros )
31 = US ( Separador de unidades )
127 = DEL ( DEL - Suprimir, borrar, eliminar )

Imprimibles

32 = espacio ( Espacio en blanco )
33 = ! ( Signos de exclamacion, signo de admiracion )
34 = " ( Comillas dobles , comillas altas o inglesas )
35 = # ( Signo numeral o almohadilla )
36 = $ ( Signo pesos )
37 = % ( Signo de porcentaje - por ciento )
38 = & ( Y - ampersand - et latina )
39 = ' ( Comillas simples, apóstrofe )
40 = ( ( Abre paréntesis )
41 = ) ( Cierra paréntesis )
42 = * ( Asterisco )
43 = + ( Signo mas, suma, positivo )
44 = , ( Coma )
45 = - ( Signo menos , resta , negativo , guión medio )
46 = . ( Punto )
47 = / ( Barra inclinada, división, operador cociente )
48 = 0 ( Número cero )
49 = 1 ( Número uno )
50 = 2 ( Número dos )
51 = 3 ( Número tres )
52 = 4 ( Número cuatro )
53 = 5 ( Número cinco )
54 = 6 ( Número seis )
55 = 7 ( Número siete )
56 = 8 ( Número ocho )
57 = 9 ( Número nueve )
58 = : ( Dos puntos )
59 = ; ( Punto y coma )
60 = < ( Menor que )
61 = = ( Signo igual, igualdad, igual que )
62 = > ( Mayor que )
63 = ? ( Cierra signo interrogación )
64 = @ ( Arroba )
65 = A ( Letra A mayúscula )
66 = B ( Letra B mayúscula )
67 = C ( Letra C mayúscula )
68 = D ( Letra D mayúscula )
69 = E ( Letra E mayúscula )
70 = F ( Letra F mayúscula )
71 = G ( Letra G mayúscula )
72 = H ( Letra H mayúscula )
73 = I ( Letra I mayúscula )
74 = J ( Letra J mayúscula )
75 = K ( Letra K mayúscula )
76 = L ( Letra L mayúscula )
77 = M ( Letra M mayúscula )
78 = N ( Letra N mayúscula )
79 = O ( Letra O mayúscula )
80 = P ( Letra P mayúscula )
81 = Q ( Letra Q mayúscula )
82 = R ( Letra R mayúscula )
83 = S ( Letra S mayúscula )
84 = T ( Letra T mayúscula )
85 = U ( Letra U mayúscula )
86 = V ( Letra V mayúscula )
87 = W ( Letra W mayúscula )
88 = X ( Letra X mayúscula )
89 = Y ( Letra Y mayúscula )
90 = Z ( Letra Z mayúscula )
91 = [ ( Abre corchetes )
92 = \ ( Barra invertida , contrabarra , barra inversa )
93 = ] ( Cierra corchetes )
94 = ^ ( Intercalación - acento circunflejo )
95 = _ ( Guión bajo , subrayado , subguión )
96 = ` ( Acento grave )
97 = a ( Letra a minúscula )
98 = b ( Letra b minúscula )
99 = c ( Letra c minúscula )
100 = d ( Letra d minúscula )
101 = e ( Letra e minúscula )
102 = f ( Letra f minúscula )
103 = g ( Letra g minúscula )
104 = h ( Letra h minúscula )
105 = i ( Letra i minúscula )
106 = j ( Letra j minúscula )
107 = k ( Letra k minúscula )
108 = l ( Letra l minúscula )
109 = m ( Letra m minúscula )
110 = n ( Letra n minúscula )
111 = o ( Letra o minúscula )
112 = p ( Letra p minúscula )
113 = q ( Letra q minúscula )
114 = r ( Letra r minúscula )
115 = s ( Letra s minúscula )
116 = t ( Letra t minúscula )
117 = u ( Letra u minúscula )
118 = v ( Letra v minúscula )
119 = w ( Letra w minúscula )
120 = x ( Letra x minúscula )
121 = y ( Letra y minúscula )
122 = z ( Letra z minúscula )
123 = { ( Abre llave curva - llaves curvas )
124 = | ( Barra vertical, pleca , linea vertical )
125 = } ( Cierra llave - llaves curvas )
126 = ~ ( Signo de equivalencia , tilde o virgulilla de la ñ )

ASCII Extendido Imprimible

128 = Ç ( Letra C cedilla mayúscula )
129 = ü ( Letra u minúscula con diéresis )
130 = é ( Letra e minúscula con acento agudo )
131 = â ( Letra a minúscula con acento circunflejo )
132 = ä ( Letra a minúscula con diéresis )
133 = à ( Letra a minúscula con acento grave )
134 = å ( Letra a minúscula con anillo )
135 = ç ( Letra c cedilla minúscula )
136 = ê ( Letra e minúscula con acento circunflejo )
137 = ë ( Letra e minúscula con diéresis )
138 = è ( Letra e minúscula con acento grave )
139 = ï ( Letra i minúscula con diéresis )
140 = î ( Letra i minúscula con acento circunflejo )
141 = ì ( Letra i minúscula con acento grave )
142 = Ä ( Letra A mayúscula con diéresis )
143 = Å ( Letra A mayúscula con anillo )
144 = É ( Letra E mayúscula con acento agudo )
145 = æ ( Diptongo latino ae minúscula )
146 = Æ ( Diptongo latino AE mayúscula )
147 = ô ( Letra o minúscula con acento circunflejo )
148 = ö ( Letra o minúscula con diéresis )
149 = ò ( Letra o minúscula con acento grave )
150 = û ( Letra u minúscula con acento circunflejo )
151 = ù ( Letra u minúscula con acento grave )
152 = ÿ ( Letra y minúscula con diéresis )
153 = Ö ( Letra O mayúscula con diéresis )
154 = Ü ( Letra U mayúscula con diéresis )
155 = ø ( Letra o minúscula con barra inclinada )
156 = £ ( Signo Libra Esterlina )
157 = Ø ( Letra O mayúscula con barra inclinada )
158 = × ( Signo de multiplicación )
159 = ƒ ( Símbolo de función, florín neerlandés )
160 = á ( Letra a minúscula con acento agudo )
161 = í ( Letra i minúscula con acento agudo )
162 = ó ( Letra o minúscula con acento agudo )
163 = ú ( Letra u minúscula con acento agudo )
164 = ñ ( Letra eñe minúscula - letra n con tilde - enie )
165 = Ñ ( Letra EÑE mayúscula - letra N con tilde - ENIE )
166 = ª ( Ordinal femenino, indicador de genero femenino )
167 = º ( Ordinal masculino, indicador de genero masculino )
168 = ¿ ( Abre signo interrogacion )
169 = ® ( Símbolo de Marca Registrada )
170 = ¬ ( Signo de negacion )
171 = ½ ( Un medio, mitad, fracción )
172 = ¼ ( Un cuarto, cuarta parte, fracción )
173 = ¡ ( Abre signos de exclamacion, signo de admiracion )
174 = « ( Abre comillas bajas, angulares, latinas o españolas )
175 = » ( Cierra comillas bajas, angulares, latinas o españolas )
176 = ░ ( Bloque color tramado densidad baja, carácter gráfico )
177 = ▒ ( Bloque color tramado densidad media, gráfico )
178 = ▓ ( Bloque color tramado densidad alta, carácter gráfico )
179 = │ ( Línea simple vertical de recuadro gráfico )
180 = ┤ ( Línea vertical con empalme de recuadro gráfico )
181 = Á ( Letra a mayúscula con acento agudo )
182 = Â ( Letra A mayúscula con acento circunflejo )
183 = À ( Letra A mayúscula con acento grave )
184 = © ( Símbolo Copyright, bajo derecho de autor )
185 = ╣ ( Doble línea vertical empalme izquierdo, gráfico )
186 = ║ ( Líneas doble vertical de recuadro gráfico, verticales )
187 = ╗ ( Línea doble esquina de recuadro gráfico )
188 = ╝ ( Línea doble esquina de recuadro gráfico )
189 = ¢ ( Signo centavo, céntimo o centésimo )
190 = ¥ ( Signo monetario YEN japonés, YUAN chino )
191 = ┐ ( Línea simple esquina de recuadro gráfico )
192 = └ ( Línea simple esquina de recuadro gráfico )
193 = ┴ ( Línea horizontal con empalme de recuadro gráfico )
194 = ┬ ( Línea horizontal con empalme de recuadro gráfico )
195 = ├ ( Línea vertical con empalme de recuadro gráfico )
196 = ─ ( Línea simple horizontal de recuadro gráfico )
197 = ┼ ( Líneas simples empalmes de recuadro gráfico )
198 = ã ( Letra a minúscula con tilde )
199 = Ã ( Letra A mayúscula con tilde )
200 = ╚ ( Línea doble esquina de recuadro gráfico )
201 = ╔ ( Línea doble esquina de recuadro gráfico )
202 = ╩ ( Doble línea horizontal empalme arriba, recuadro )
203 = ╦ ( Doble línea horizontal empalme abajo, recuadro )
204 = ╠ ( Doble línea vertical empalme derecho, recuadro )
205 = ═ ( Líneas doble horizontales de recuadro gráfico )
206 = ╬ ( Líneas dobles cruce de líneas de recuadro gráfico )
207 = ¤ ( Signo monetario - divisa general )
208 = ð ( Letra eth latina minúscula )
209 = Ð ( Letra eth latina mayúscula )
210 = Ê ( Letra E mayúscula con acento circunflejo )
211 = Ë ( Letra E mayúscula con diéresis )
212 = È ( Letra E mayúscula con acento grave )
213 = ı ( Letra minuscula i sin punto )
214 = Í ( Letra i mayúscula con acento agudo )
215 = Î ( Letra I mayúscula con acento circunflejo )
216 = Ï ( Letra i mayúscula con diéresis )
217 = ┘ ( Línea simple esquina de recuadro gráfico )
218 = ┌ ( Línea simple esquina de recuadro gráfico )
219 = █ ( Bloque color pleno solido, carácter gráfico )
220 = ▄ ( Medio bloque color pleno, mitad inferior, carácter gráfico )
221 = ¦ ( Barra vertical partida )
222 = Ì ( Letra I mayúscula con acento grave )
223 = ▀ ( Medio bloque color pleno, mitad superior, carácter gráfico )
224 = Ó ( Letra o mayúscula con acento agudo )
225 = ß ( Letra alemana eszett o ese-zeta )
226 = Ô ( Letra O mayúscula con acento circunflejo )
227 = Ò ( Letra O mayúscula con acento grave )
228 = õ ( Letra o minúscula con tilde )
229 = Õ ( Letra O mayúscula con tilde )
230 = µ ( Signo micro )
231 = þ ( Letra latina thorn minúscula )
232 = Þ ( Letra latina thorn mayúscula )
233 = Ú ( Letra U mayúscula con acento agudo )
234 = Û ( Letra U mayúscula con acento circunflejo )
235 = Ù ( Letra U mayúscula con acento grave )
236 = ý ( Letra y minúscula con acento agudo )
237 = Ý ( Letra Y mayúscula con acento agudo )
238 = ¯ ( Macron (marca larga), superguión, guión alto )
239 = ´ ( Acento agudo )
240 = ≡ ( Símbolo matemático de congruencia )
241 = ± ( Signo mas menos )
242 = ‗ ( ASCII 242 )
243 = ¾ ( Tres cuartos, fracción )
244 = ¶ ( Fin de párrafo - signo de calderón )
245 = § ( Signo de sección )
246 = ÷ ( Signo de división )
247 = ¸ ( Cedilla , virgulilla baja )
248 = ° ( Signo de grado, anillo )
249 = ¨ ( Diéresis )
250 = · ( Punto centrado, punto medio, coma georgiana )
251 = ¹ ( Superíndice uno )
252 = ³ ( Superíndice tres , potencia tres , al cubo )
253 = ² ( Superíndice dos , al cuadrado )
254 = ■ ( ASCII 254 )
255 = nbsp ( Espacio sin separación - non breaking space )

Éste artículo puede servir para consultarlo en cualquier momento ya que muchas veces habrá que escribir un carácter ASCII y obviamente aprenderlos todos es una tarea dificultosa. También vuelvo a aconsejar imprimir la imagen con la tabla completa, será de gran ayuda.

Podéis consultar más información acerca de ASCII y ASCII Extendido en sus respectivos artículos de wikipedia y en la web elcodigoascii.com.ar.

¿Qué otros estándares de codificación conocéis?

 
Google+