Tabla ASCII
ASCII asigna un número a 128 caracteres: los dígitos, las letras latinas sin acento, los signos de puntuación habituales y 33 códigos de control que nunca se pensaron para imprimirse. Todos ellos figuran a continuación en decimal, hexadecimal, octal y binario, junto con su número de entidad HTML.
Los primeros 32 códigos y el último son de control. La mayoría son históricos, de una época de teleimpresores y cinta perforada, pero unos cuantos siguen gobernando todo lo que escribes: 9 es el tabulador, 10 es el salto de línea de Unix, 13 es el retorno de carro que Windows le empareja, y 27 inicia todas las secuencias de escape ANSI que tu terminal usa para el color.
ASCII son los primeros 128 puntos de código de Unicode, sin cambios, y por eso sigue siendo el denominador común de casi todas las codificaciones en uso. UTF-8 se diseñó para que cualquier archivo puramente ASCII ya sea UTF-8 válido, byte a byte.
Códigos de control#
0–31, 127| Dec | Hex | Oct | Binario | Car | HTML | Nombre |
|---|
| 0 | 00 | 000 | 00000000 | NUL | � | NuloTerminador de cadena en C. No es un carácter imprimible. |
| 1 | 01 | 001 | 00000001 | SOH |  | Inicio de encabezadoHistórico; enmarcaba la cabecera de un bloque de transmisión. |
| 2 | 02 | 002 | 00000010 | STX |  | Inicio de textoHistórico; marcaba dónde empezaba el cuerpo del mensaje. |
| 3 | 03 | 003 | 00000011 | ETX |  | Fin de textoLo envía Ctrl+C, que es por lo que esa tecla interrumpe un programa. |
| 4 | 04 | 004 | 00000100 | EOT |  | Fin de transmisiónLo envía Ctrl+D; cierra la entrada estándar en una shell de Unix. |
| 5 | 05 | 005 | 00000101 | ENQ |  | ConsultaHistórico; pedía al otro extremo que se identificara. |
| 6 | 06 | 006 | 00000110 | ACK |  | Acuse de reciboRespuesta positiva en los protocolos serie más antiguos. |
| 7 | 07 | 007 | 00000111 | BEL |  | TimbreHace sonar el timbre del terminal. Se escribe \a en C. |
| 8 | 08 | 010 | 00001000 | BS |  | RetrocesoMueve el cursor una columna hacia atrás. Se escribe \b. |
| 9 | 09 | 011 | 00001001 | HT | 	 | Tabulación horizontalLa tecla Tab. Se escribe \t. |
| 10 | 0A | 012 | 00001010 | LF | | Salto de líneaEl salto de línea de Unix. Se escribe \n. |
| 11 | 0B | 013 | 00001011 | VT |  | Tabulación verticalRaro; avanza al siguiente tabulador vertical. Se escribe \v. |
| 12 | 0C | 014 | 00001100 | FF |  | Salto de páginaSalto de página para impresoras. Se escribe \f. |
| 13 | 0D | 015 | 00001101 | CR | | Retorno de carroVuelve a la columna uno. En Windows se empareja con LF. Se escribe \r. |
| 14 | 0E | 016 | 00001110 | SO |  | Shift OutHistórico; cambiaba a un conjunto de caracteres alternativo. |
| 15 | 0F | 017 | 00001111 | SI |  | Shift InHistórico; volvía al conjunto estándar. |
| 16 | 10 | 020 | 00010000 | DLE |  | Escape de enlace de datosHistórico; convertía los bytes siguientes en datos de control. |
| 17 | 11 | 021 | 00010001 | DC1 |  | Control de dispositivo 1XON — reanuda una transmisión en pausa. Lo envía Ctrl+Q. |
| 18 | 12 | 022 | 00010010 | DC2 |  | Control de dispositivo 2Control de dispositivo histórico. |
| 19 | 13 | 023 | 00010011 | DC3 |  | Control de dispositivo 3XOFF — pausa la transmisión. Lo envía Ctrl+S. |
| 20 | 14 | 024 | 00010100 | DC4 |  | Control de dispositivo 4Control de dispositivo histórico. |
| 21 | 15 | 025 | 00010101 | NAK |  | Acuse de recibo negativoRespuesta negativa en los protocolos serie más antiguos. |
| 22 | 16 | 026 | 00010110 | SYN |  | Inactividad síncronaRellenaba el silencio en los enlaces síncronos. |
| 23 | 17 | 027 | 00010111 | ETB |  | Fin de bloque de transmisiónHistórico; terminaba un bloque de un mensaje más largo. |
| 24 | 18 | 030 | 00011000 | CAN |  | CancelarDescarta los datos enviados antes de él. |
| 25 | 19 | 031 | 00011001 | EM |  | Fin de medioMarcaba el final físico de una cinta o un mazo de tarjetas. |
| 26 | 1A | 032 | 00011010 | SUB |  | SustitutoMarcador de fin de archivo en DOS y CP/M. Lo envía Ctrl+Z. |
| 27 | 1B | 033 | 00011011 | ESC |  | EscapeInicia una secuencia de escape ANSI: colores del terminal y movimientos del cursor. |
| 28 | 1C | 034 | 00011100 | FS |  | Separador de archivosEl más grueso de los cuatro separadores de datos. |
| 29 | 1D | 035 | 00011101 | GS |  | Separador de gruposSepara grupos dentro de un archivo. |
| 30 | 1E | 036 | 00011110 | RS |  | Separador de registrosSepara registros dentro de un grupo. |
| 31 | 1F | 037 | 00011111 | US |  | Separador de unidadesEl separador más fino; se usa a veces como delimitador de campos. |
| 127 | 7F | 177 | 01111111 | DEL |  | SuprimirTodos los bits perforados en la cinta de papel, que es por lo que está en lo más alto. |
| Dec | Hex | Oct | Binario | Car | HTML | Nombre |
|---|
| 32 | 20 | 040 | 00100000 | |   | Espacio |
Puntuación y símbolos#
33–47, 58–64, 91–96, 123–126| Dec | Hex | Oct | Binario | Car | HTML | Nombre |
|---|
| 33 | 21 | 041 | 00100001 | ! | ! | Signo de exclamación |
| 34 | 22 | 042 | 00100010 | " | " | Comillas |
| 35 | 23 | 043 | 00100011 | # | # | Almohadilla |
| 36 | 24 | 044 | 00100100 | $ | $ | Signo de dólar |
| 37 | 25 | 045 | 00100101 | % | % | Signo de porcentaje |
| 38 | 26 | 046 | 00100110 | & | & | Ampersand |
| 39 | 27 | 047 | 00100111 | ' | ' | Apóstrofo |
| 40 | 28 | 050 | 00101000 | ( | ( | Paréntesis izquierdo |
| 41 | 29 | 051 | 00101001 | ) | ) | Paréntesis derecho |
| 42 | 2A | 052 | 00101010 | * | * | Asterisco |
| 43 | 2B | 053 | 00101011 | + | + | Signo más |
| 44 | 2C | 054 | 00101100 | , | , | Coma |
| 45 | 2D | 055 | 00101101 | - | - | Guion-menos |
| 46 | 2E | 056 | 00101110 | . | . | Punto |
| 47 | 2F | 057 | 00101111 | / | / | Barra |
| 58 | 3A | 072 | 00111010 | : | : | Dos puntos |
| 59 | 3B | 073 | 00111011 | ; | ; | Punto y coma |
| 60 | 3C | 074 | 00111100 | < | < | Signo menor que |
| 61 | 3D | 075 | 00111101 | = | = | Signo igual |
| 62 | 3E | 076 | 00111110 | > | > | Signo mayor que |
| 63 | 3F | 077 | 00111111 | ? | ? | Signo de interrogación |
| 64 | 40 | 100 | 01000000 | @ | @ | Arroba |
| 91 | 5B | 133 | 01011011 | [ | [ | Corchete izquierdo |
| 92 | 5C | 134 | 01011100 | \ | \ | Barra invertida |
| 93 | 5D | 135 | 01011101 | ] | ] | Corchete derecho |
| 94 | 5E | 136 | 01011110 | ^ | ^ | Acento circunflejo |
| 95 | 5F | 137 | 01011111 | _ | _ | Guion bajo |
| 96 | 60 | 140 | 01100000 | ` | ` | Acento grave |
| 123 | 7B | 173 | 01111011 | { | { | Llave izquierda |
| 124 | 7C | 174 | 01111100 | | | | | Barra vertical |
| 125 | 7D | 175 | 01111101 | } | } | Llave derecha |
| 126 | 7E | 176 | 01111110 | ~ | ~ | Tilde (~) |
| Dec | Hex | Oct | Binario | Car | HTML | Nombre |
|---|
| 48 | 30 | 060 | 00110000 | 0 | 0 | Dígito 0 |
| 49 | 31 | 061 | 00110001 | 1 | 1 | Dígito 1 |
| 50 | 32 | 062 | 00110010 | 2 | 2 | Dígito 2 |
| 51 | 33 | 063 | 00110011 | 3 | 3 | Dígito 3 |
| 52 | 34 | 064 | 00110100 | 4 | 4 | Dígito 4 |
| 53 | 35 | 065 | 00110101 | 5 | 5 | Dígito 5 |
| 54 | 36 | 066 | 00110110 | 6 | 6 | Dígito 6 |
| 55 | 37 | 067 | 00110111 | 7 | 7 | Dígito 7 |
| 56 | 38 | 070 | 00111000 | 8 | 8 | Dígito 8 |
| 57 | 39 | 071 | 00111001 | 9 | 9 | Dígito 9 |
| Dec | Hex | Oct | Binario | Car | HTML | Nombre |
|---|
| 65 | 41 | 101 | 01000001 | A | A | Letra mayúscula A |
| 66 | 42 | 102 | 01000010 | B | B | Letra mayúscula B |
| 67 | 43 | 103 | 01000011 | C | C | Letra mayúscula C |
| 68 | 44 | 104 | 01000100 | D | D | Letra mayúscula D |
| 69 | 45 | 105 | 01000101 | E | E | Letra mayúscula E |
| 70 | 46 | 106 | 01000110 | F | F | Letra mayúscula F |
| 71 | 47 | 107 | 01000111 | G | G | Letra mayúscula G |
| 72 | 48 | 110 | 01001000 | H | H | Letra mayúscula H |
| 73 | 49 | 111 | 01001001 | I | I | Letra mayúscula I |
| 74 | 4A | 112 | 01001010 | J | J | Letra mayúscula J |
| 75 | 4B | 113 | 01001011 | K | K | Letra mayúscula K |
| 76 | 4C | 114 | 01001100 | L | L | Letra mayúscula L |
| 77 | 4D | 115 | 01001101 | M | M | Letra mayúscula M |
| 78 | 4E | 116 | 01001110 | N | N | Letra mayúscula N |
| 79 | 4F | 117 | 01001111 | O | O | Letra mayúscula O |
| 80 | 50 | 120 | 01010000 | P | P | Letra mayúscula P |
| 81 | 51 | 121 | 01010001 | Q | Q | Letra mayúscula Q |
| 82 | 52 | 122 | 01010010 | R | R | Letra mayúscula R |
| 83 | 53 | 123 | 01010011 | S | S | Letra mayúscula S |
| 84 | 54 | 124 | 01010100 | T | T | Letra mayúscula T |
| 85 | 55 | 125 | 01010101 | U | U | Letra mayúscula U |
| 86 | 56 | 126 | 01010110 | V | V | Letra mayúscula V |
| 87 | 57 | 127 | 01010111 | W | W | Letra mayúscula W |
| 88 | 58 | 130 | 01011000 | X | X | Letra mayúscula X |
| 89 | 59 | 131 | 01011001 | Y | Y | Letra mayúscula Y |
| 90 | 5A | 132 | 01011010 | Z | Z | Letra mayúscula Z |
| 97 | 61 | 141 | 01100001 | a | a | Letra minúscula a |
| 98 | 62 | 142 | 01100010 | b | b | Letra minúscula b |
| 99 | 63 | 143 | 01100011 | c | c | Letra minúscula c |
| 100 | 64 | 144 | 01100100 | d | d | Letra minúscula d |
| 101 | 65 | 145 | 01100101 | e | e | Letra minúscula e |
| 102 | 66 | 146 | 01100110 | f | f | Letra minúscula f |
| 103 | 67 | 147 | 01100111 | g | g | Letra minúscula g |
| 104 | 68 | 150 | 01101000 | h | h | Letra minúscula h |
| 105 | 69 | 151 | 01101001 | i | i | Letra minúscula i |
| 106 | 6A | 152 | 01101010 | j | j | Letra minúscula j |
| 107 | 6B | 153 | 01101011 | k | k | Letra minúscula k |
| 108 | 6C | 154 | 01101100 | l | l | Letra minúscula l |
| 109 | 6D | 155 | 01101101 | m | m | Letra minúscula m |
| 110 | 6E | 156 | 01101110 | n | n | Letra minúscula n |
| 111 | 6F | 157 | 01101111 | o | o | Letra minúscula o |
| 112 | 70 | 160 | 01110000 | p | p | Letra minúscula p |
| 113 | 71 | 161 | 01110001 | q | q | Letra minúscula q |
| 114 | 72 | 162 | 01110010 | r | r | Letra minúscula r |
| 115 | 73 | 163 | 01110011 | s | s | Letra minúscula s |
| 116 | 74 | 164 | 01110100 | t | t | Letra minúscula t |
| 117 | 75 | 165 | 01110101 | u | u | Letra minúscula u |
| 118 | 76 | 166 | 01110110 | v | v | Letra minúscula v |
| 119 | 77 | 167 | 01110111 | w | w | Letra minúscula w |
| 120 | 78 | 170 | 01111000 | x | x | Letra minúscula x |
| 121 | 79 | 171 | 01111001 | y | y | Letra minúscula y |
| 122 | 7A | 172 | 01111010 | z | z | Letra minúscula z |
Preguntas frecuentes
¿Cuál es la diferencia entre ASCII y UTF-8?
ASCII define 128 caracteres, numerados del 0 al 127. UTF-8 es una codificación para todo Unicode —más de 150 000 caracteres— y codifica esos primeros 128 como bytes individuales con exactamente los valores ASCII. Por eso todo archivo ASCII es un archivo UTF-8 válido, pero lo contrario solo se cumple si el texto se mantiene dentro de esos 128 caracteres.
¿Por qué se detiene la tabla en 127?
ASCII es un estándar de 7 bits, y 2⁷ es 128. Los códigos 128–255 no son ASCII: pertenecen a la extensión de 8 bits que esté en juego —Windows-1252, ISO-8859-1 y otras—, que es justamente la razón de que no coincidan entre sí y de que el texto con acentos llegue tan a menudo destrozado.
¿Cuál es el código ASCII del espacio?
Decimal 32, hexadecimal 20. Es un carácter imprimible aunque parezca no ser nada, y por eso queda fuera del rango de control que termina en 31.
¿Por qué DEL está en 127 y no en 0?
La cinta perforada. Borrar un carácter significaba perforar todos los agujeros de su posición, y los siete bits perforados son 127. Un carácter borrado no podía recuperarse, y de ahí viene también el significado moderno.
¿Cuál es la diferencia entre CR y LF?
CR (13) devuelve el cabezal de impresión a la columna uno; LF (10) avanza una línea. Unix y macOS terminan las líneas solo con LF, Windows usa CR seguido de LF, y ese desacuerdo es la razón de que un archivo aparezca como una sola línea larga o con caracteres ^M sueltos.