Tabla ASCII
Referencia completa de códigos de caracteres ASCII con caracteres de control, imprimibles y extendidos
| Decimal | Hexadecimal | Carácter | Descripción | |
|---|---|---|---|---|
| 0 | 0x00 | - | Carácter nulo | |
| 1 | 0x01 | - | Inicio de Encabezado | |
| 2 | 0x02 | - | Inicio de Texto | |
| 3 | 0x03 | - | Fin de Texto | |
| 4 | 0x04 | - | Fin de Transmisión | |
| 5 | 0x05 | - | Consulta | |
| 6 | 0x06 | - | Reconocimiento | |
| 7 | 0x07 | - | Campana | |
| 8 | 0x08 | - | Retroceso | |
| 9 | 0x09 | - | Tabulador Horizontal | |
| 10 | 0x0A | - | Alimentación de Línea | |
| 11 | 0x0B | - | Tabulador Vertical | |
| 12 | 0x0C | - | Alimentación de Formulario | |
| 13 | 0x0D | - | Retorno de Carro | |
| 14 | 0x0E | - | Shift Out | |
| 15 | 0x0F | - | Shift In | |
| 16 | 0x10 | - | Escape de Enlace de Datos | |
| 17 | 0x11 | - | Control de Dispositivo 1 | |
| 18 | 0x12 | - | Control de Dispositivo 2 | |
| 19 | 0x13 | - | Control de Dispositivo 3 | |
| 20 | 0x14 | - | Control de Dispositivo 4 | |
| 21 | 0x15 | - | Reconocimiento Negativo | |
| 22 | 0x16 | - | Inactivo Sincrónico | |
| 23 | 0x17 | - | Fin de Bloque de Transmisión | |
| 24 | 0x18 | - | Cancelar | |
| 25 | 0x19 | - | Fin de Medio | |
| 26 | 0x1A | - | Sustituto | |
| 27 | 0x1B | - | Escape | |
| 28 | 0x1C | - | Separador de Archivo | |
| 29 | 0x1D | - | Separador de Grupo | |
| 30 | 0x1E | - | Separador de Registro | |
| 31 | 0x1F | - | Separador de Unidad | |
| 127 | 0x7F | - | Suprimir | |
| 32 | 0x20 | ␣ | Espacio | |
| 33 | 0x21 | ! | Signo de exclamación | |
| 34 | 0x22 | " | Comillas dobles | |
| 35 | 0x23 | # | Signo de número | |
| 36 | 0x24 | $ | Signo de dólar | |
| 37 | 0x25 | % | Signo de porcentaje | |
| 38 | 0x26 | & | Ampersand | |
| 39 | 0x27 | ' | Comilla simple | |
| 40 | 0x28 | ( | Paréntesis izquierdo | |
| 41 | 0x29 | ) | Paréntesis derecho | |
| 42 | 0x2A | * | Asterisco | |
| 43 | 0x2B | + | Signo más | |
| 44 | 0x2C | , | Coma | |
| 45 | 0x2D | - | Guion | |
| 46 | 0x2E | . | Punto | |
| 47 | 0x2F | / | Barra | |
| 48 | 0x30 | 0 | Dígito 0 | |
| 49 | 0x31 | 1 | Dígito 1 | |
| 50 | 0x32 | 2 | Dígito 2 | |
| 51 | 0x33 | 3 | Dígito 3 | |
| 52 | 0x34 | 4 | Dígito 4 | |
| 53 | 0x35 | 5 | Dígito 5 | |
| 54 | 0x36 | 6 | Dígito 6 | |
| 55 | 0x37 | 7 | Dígito 7 | |
| 56 | 0x38 | 8 | Dígito 8 | |
| 57 | 0x39 | 9 | Dígito 9 | |
| 58 | 0x3A | : | Dos puntos | |
| 59 | 0x3B | ; | Punto y coma | |
| 60 | 0x3C | < | Menor que | |
| 61 | 0x3D | = | Signo igual | |
| 62 | 0x3E | > | Mayor que | |
| 63 | 0x3F | ? | Signo de interrogación | |
| 64 | 0x40 | @ | Arroba | |
| 65 | 0x41 | A | A mayúscula | |
| 66 | 0x42 | B | B mayúscula | |
| 67 | 0x43 | C | C mayúscula | |
| 68 | 0x44 | D | D mayúscula | |
| 69 | 0x45 | E | E mayúscula | |
| 70 | 0x46 | F | F mayúscula | |
| 71 | 0x47 | G | G mayúscula | |
| 72 | 0x48 | H | H mayúscula | |
| 73 | 0x49 | I | I mayúscula | |
| 74 | 0x4A | J | J mayúscula | |
| 75 | 0x4B | K | K mayúscula | |
| 76 | 0x4C | L | L mayúscula | |
| 77 | 0x4D | M | M mayúscula | |
| 78 | 0x4E | N | N mayúscula | |
| 79 | 0x4F | O | O mayúscula | |
| 80 | 0x50 | P | P mayúscula | |
| 81 | 0x51 | Q | Q mayúscula | |
| 82 | 0x52 | R | R mayúscula | |
| 83 | 0x53 | S | S mayúscula | |
| 84 | 0x54 | T | T mayúscula | |
| 85 | 0x55 | U | U mayúscula | |
| 86 | 0x56 | V | V mayúscula | |
| 87 | 0x57 | W | W mayúscula | |
| 88 | 0x58 | X | X mayúscula | |
| 89 | 0x59 | Y | Y mayúscula | |
| 90 | 0x5A | Z | Z mayúscula | |
| 91 | 0x5B | [ | Corchete izquierdo | |
| 92 | 0x5C | \ | Barra invertida | |
| 93 | 0x5D | ] | Corchete derecho | |
| 94 | 0x5E | ^ | Circunflejo | |
| 95 | 0x5F | _ | Guion bajo | |
| 96 | 0x60 | ` | Acento grave | |
| 97 | 0x61 | a | a minúscula | |
| 98 | 0x62 | b | b minúscula | |
| 99 | 0x63 | c | c minúscula | |
| 100 | 0x64 | d | d minúscula | |
| 101 | 0x65 | e | e minúscula | |
| 102 | 0x66 | f | f minúscula | |
| 103 | 0x67 | g | g minúscula | |
| 104 | 0x68 | h | h minúscula | |
| 105 | 0x69 | i | i minúscula | |
| 106 | 0x6A | j | j minúscula | |
| 107 | 0x6B | k | k minúscula | |
| 108 | 0x6C | l | l minúscula | |
| 109 | 0x6D | m | m minúscula | |
| 110 | 0x6E | n | n minúscula | |
| 111 | 0x6F | o | o minúscula | |
| 112 | 0x70 | p | p minúscula | |
| 113 | 0x71 | q | q minúscula | |
| 114 | 0x72 | r | r minúscula | |
| 115 | 0x73 | s | s minúscula | |
| 116 | 0x74 | t | t minúscula | |
| 117 | 0x75 | u | u minúscula | |
| 118 | 0x76 | v | v minúscula | |
| 119 | 0x77 | w | w minúscula | |
| 120 | 0x78 | x | x minúscula | |
| 121 | 0x79 | y | y minúscula | |
| 122 | 0x7A | z | z minúscula | |
| 123 | 0x7B | { | Llave izquierda | |
| 124 | 0x7C | | | Barra vertical | |
| 125 | 0x7D | } | Llave derecha | |
| 126 | 0x7E | ~ | Virgulilla | |
| 128 | 0x80 | | ||
| 129 | 0x81 | | ||
| 130 | 0x82 | | ||
| 131 | 0x83 | | ||
| 132 | 0x84 | | ||
| 133 | 0x85 | |||
| 134 | 0x86 | | ||
| 135 | 0x87 | | ||
| 136 | 0x88 | | ||
| 137 | 0x89 | | ||
| 138 | 0x8A | | ||
| 139 | 0x8B | | ||
| 140 | 0x8C | | ||
| 141 | 0x8D | | ||
| 142 | 0x8E | | ||
| 143 | 0x8F | | ||
| 144 | 0x90 | | ||
| 145 | 0x91 | | ||
| 146 | 0x92 | | ||
| 147 | 0x93 | | ||
| 148 | 0x94 | | ||
| 149 | 0x95 | | ||
| 150 | 0x96 | | ||
| 151 | 0x97 | | ||
| 152 | 0x98 | | ||
| 153 | 0x99 | | ||
| 154 | 0x9A | | ||
| 155 | 0x9B | | ||
| 156 | 0x9C | | ||
| 157 | 0x9D | | ||
| 158 | 0x9E | | ||
| 159 | 0x9F | | ||
| 160 | 0xA0 | |||
| 161 | 0xA1 | ¡ | ||
| 162 | 0xA2 | ¢ | ||
| 163 | 0xA3 | £ | ||
| 164 | 0xA4 | ¤ | ||
| 165 | 0xA5 | ¥ | ||
| 166 | 0xA6 | ¦ | ||
| 167 | 0xA7 | § | ||
| 168 | 0xA8 | ¨ | ||
| 169 | 0xA9 | © | ||
| 170 | 0xAA | ª | ||
| 171 | 0xAB | « | ||
| 172 | 0xAC | ¬ | ||
| 173 | 0xAD | | ||
| 174 | 0xAE | ® | ||
| 175 | 0xAF | ¯ | ||
| 176 | 0xB0 | ° | ||
| 177 | 0xB1 | ± | ||
| 178 | 0xB2 | ² | ||
| 179 | 0xB3 | ³ | ||
| 180 | 0xB4 | ´ | ||
| 181 | 0xB5 | µ | ||
| 182 | 0xB6 | ¶ | ||
| 183 | 0xB7 | · | ||
| 184 | 0xB8 | ¸ | ||
| 185 | 0xB9 | ¹ | ||
| 186 | 0xBA | º | ||
| 187 | 0xBB | » | ||
| 188 | 0xBC | ¼ | ||
| 189 | 0xBD | ½ | ||
| 190 | 0xBE | ¾ | ||
| 191 | 0xBF | ¿ | ||
| 192 | 0xC0 | À | ||
| 193 | 0xC1 | Á | ||
| 194 | 0xC2 | Â | ||
| 195 | 0xC3 | Ã | ||
| 196 | 0xC4 | Ä | ||
| 197 | 0xC5 | Å | ||
| 198 | 0xC6 | Æ | ||
| 199 | 0xC7 | Ç | ||
| 200 | 0xC8 | È | ||
| 201 | 0xC9 | É | ||
| 202 | 0xCA | Ê | ||
| 203 | 0xCB | Ë | ||
| 204 | 0xCC | Ì | ||
| 205 | 0xCD | Í | ||
| 206 | 0xCE | Î | ||
| 207 | 0xCF | Ï | ||
| 208 | 0xD0 | Ð | ||
| 209 | 0xD1 | Ñ | ||
| 210 | 0xD2 | Ò | ||
| 211 | 0xD3 | Ó | ||
| 212 | 0xD4 | Ô | ||
| 213 | 0xD5 | Õ | ||
| 214 | 0xD6 | Ö | ||
| 215 | 0xD7 | × | ||
| 216 | 0xD8 | Ø | ||
| 217 | 0xD9 | Ù | ||
| 218 | 0xDA | Ú | ||
| 219 | 0xDB | Û | ||
| 220 | 0xDC | Ü | ||
| 221 | 0xDD | Ý | ||
| 222 | 0xDE | Þ | ||
| 223 | 0xDF | ß | ||
| 224 | 0xE0 | à | ||
| 225 | 0xE1 | á | ||
| 226 | 0xE2 | â | ||
| 227 | 0xE3 | ã | ||
| 228 | 0xE4 | ä | ||
| 229 | 0xE5 | å | ||
| 230 | 0xE6 | æ | ||
| 231 | 0xE7 | ç | ||
| 232 | 0xE8 | è | ||
| 233 | 0xE9 | é | ||
| 234 | 0xEA | ê | ||
| 235 | 0xEB | ë | ||
| 236 | 0xEC | ì | ||
| 237 | 0xED | í | ||
| 238 | 0xEE | î | ||
| 239 | 0xEF | ï | ||
| 240 | 0xF0 | ð | ||
| 241 | 0xF1 | ñ | ||
| 242 | 0xF2 | ò | ||
| 243 | 0xF3 | ó | ||
| 244 | 0xF4 | ô | ||
| 245 | 0xF5 | õ | ||
| 246 | 0xF6 | ö | ||
| 247 | 0xF7 | ÷ | ||
| 248 | 0xF8 | ø | ||
| 249 | 0xF9 | ù | ||
| 250 | 0xFA | ú | ||
| 251 | 0xFB | û | ||
| 252 | 0xFC | ü | ||
| 253 | 0xFD | ý | ||
| 254 | 0xFE | þ | ||
| 255 | 0xFF | ÿ |
¿Qué es ASCII?
ASCII (Código Estadounidense Estándar para el Intercambio de Información) es un estándar de codificación de caracteres basado en el alfabeto latino. Desarrollado originalmente para la comunicación por telégrafo en la década de 1960, se convirtió en el sistema de codificación de caracteres fundamental en la informática. El ASCII estándar contiene 128 caracteres (0-127), incluyendo 33 caracteres de control y 95 caracteres imprimibles. El ASCII extendido (128-255) añade otros 128 caracteres para símbolos y caracteres internacionales, aunque la codificación varía según la región. Una tabla ASCII es especialmente útil al depurar codificaciones, caracteres de control, protocolos, secuencias de escape, terminales y formatos antiguos. Los valores decimal, hexadecimal y binario muestran cómo se almacena o transmite realmente un carácter. El texto moderno suele usar Unicode, así que ASCII cubre solo el núcleo histórico de 7 bits. Para caracteres internacionales, emojis, signos tipográficos y textos multilingües, hay que revisar también puntos de código Unicode y reglas de codificación.
Cómo usar
Operaciones básicas
- Haz clic en cualquier valor o carácter para copiarlo
- Usa el buscador para localizar caracteres concretos rápidamente
- Haz clic en los botones de categoría para filtrar por tipo de carácter
- Pasa el cursor sobre los caracteres para ver descripciones detalladas
Notas sobre codificación
- ASCII solo cubre el rango 0-127; las letras acentuadas, los emojis y casi todo el texto no inglés requieren codificaciones Unicode como UTF-8.
- Los caracteres de control pueden no mostrarse visualmente, pero afectan a archivos, terminales, protocolos y texto pegado.
Casos de uso
Principio técnico
ASCII (American Standard Code for Information Interchange, ANSI X3.4-1968, ISO/IEC 646:1991 IRV) es una codificación de caracteres de 7 bits que asigna códigos numéricos 0-127 a 128 caracteres. Los 32 códigos inferiores (0x00-0x1F) más 0x7F son caracteres de control heredados de los teletipos: NUL (0x00), BEL (0x07, la alerta sonora), LF (0x0A, avance de línea), CR (0x0D, retorno de carro), ESC (0x1B), DEL (0x7F), entre otros. Los códigos 0x20-0x7E son imprimibles: espacio, los dígitos 0-9 en 0x30-0x39, las letras mayúsculas A-Z en 0x41-0x5A, las letras minúsculas a-z en 0x61-0x7A y puntuación entre ellos. La codificación tiene una estructura deliberadamente regular. Los dígitos están agrupados: '0' = 0x30, '1' = 0x31, ..., '9' = 0x39. Convertir un carácter dígito a su valor numérico es `code - 0x30`. Las letras también están agrupadas: 'A' = 0x41, 'B' = 0x42, ..., 'Z' = 0x5A, y 'a' = 0x61, ..., 'z' = 0x7A. La diferencia entre mayúsculas y minúsculas para la misma letra es 0x20 (32), que es exactamente un bit activado en la posición 5 (1 << 5 = 32). Eso hace que la conversión de mayúsculas/minúsculas sea un solo XOR o OR/AND con 0x20: `code ^ 0x20` invierte mayúsculas, `code | 0x20` convierte a minúsculas, `code & 0x5F` (= `code & ~0x20`) convierte a mayúsculas. Este truco de bits es la conversión de mayúsculas más rápida posible y aparece en implementaciones de strlen/strcmp para cadenas solo ASCII. ASCII fue diseñado para teletipos de 7 bits y el código Baudot de 5 niveles que lo precedió, por lo que es anterior a los bytes de 8 bits. El rango de 'ASCII extendido' de 8 bits (0x80-0xFF) nunca fue estandarizado, razón por la cual tantas páginas de códigos (ISO 8859-1 Latin-1, Windows-1252, MacRoman, KOI8-R, IBM437) compitieron por la mitad superior. ISO 8859-1 (Latin-1) fue lo más cercano a un estándar, pero incluso carecía del símbolo del euro hasta ISO 8859-15. El rango de control C1 (0x80-0x9F) debía estar reservado (ISO 6429), pero Windows-1252 reutilizó parte de él para caracteres imprimibles — un dolor de interoperabilidad prolongado que UTF-8 finalmente resolvió. UTF-8 (RFC 3629, 2003) fue diseñado por Rob Pike y Ken Thompson en 1992 como un superconjunto compatible hacia atrás: los 128 códigos ASCII se codifican como ellos mismos en un solo byte (0x00-0x7F), por lo que cualquier texto ASCII es también un texto UTF-8 válido. Los códigos por encima de 0x7F usan secuencias de 2, 3 o 4 bytes con patrones de bits específicos (110xxxxx 10xxxxxx, 1110xxxx 10xxxxxx 10xxxxxx, 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx) para que un decodificador pueda resincronizar byte a byte tras un error. EBCDIC, en contraste, fue la codificación de 8 bits de los mainframes de IBM (EBCDIC de 8 bits era de 8 bits, no de 7 como ASCII) y asigna letras a puntos de código no contiguos ('A' = 0xC1, 'I' = 0xC9, 'J' = 0xD1, ..., con huecos que perjudican los trucos de bits y algoritmos de cadenas). Las variantes nacionales de ISO 646 reemplazaron un pequeño conjunto de caracteres ASCII con letras específicas de cada país. Por ejemplo, la variante británica reemplazó 0x23 (el '#' estadounidense) con el símbolo de libra '£', y la variante alemana reemplazó algo de puntuación con diéresis. Por esto la configuración regional de C y los archivos charmap de POSIX fueron históricamente importantes — mapeaban entre la IRV (Versión de Referencia Internacional) y las variantes nacionales. La salida de este lío es Unicode / UTF-8, que hace obsoleto todo el debate de 7 y 8 bits para cualquier proyecto nuevo.
- ASCII (ANSI X3.4-1968, ISO/IEC 646 IRV) usa 7 bits por carácter con 128 puntos de código: 33 caracteres de control (0x00-0x1F, 0x7F) y 95 caracteres imprimibles (0x20-0x7E).
- Los caracteres de control (0x00-0x1F, 0x7F) se heredaron de los teletipos: NUL, BEL (0x07, alerta sonora), LF (0x0A), CR (0x0D), ESC (0x1B), DEL (0x7F). El texto moderno aún usa LF y CR; el resto es mostly historia.
- Diseño imprimible: espacio (0x20), dígitos '0'-'9' (0x30-0x39), mayúsculas 'A'-'Z' (0x41-0x5A), minúsculas 'a'-'z' (0x61-0x7A), puntuación entre medias. Convertir '5' a 5 es `code - 0x30`; mayúscula a minúscula es `code | 0x20`.
- La conversión de mayúsculas es una sola operación de bits: XOR 0x20 invierte; OR 0x20 convierte a minúsculas; AND 0x5F (= `code & ~0x20`) convierte a mayúsculas. Esta es la conversión de mayúsculas más rápida en cualquier lenguaje y es cómo funcionan strlen/strcmp en buffers solo ASCII.
- Las extensiones de 8 bits (0x80-0xFF) nunca fueron estandarizadas, por lo que Windows-1252, ISO-8859-1, MacRoman, KOI8-R, IBM437 definieron la mitad alta de forma diferente. Windows-1252 ganó en la web y es el 'ASCII extendido' de facto que usa la mayoría del código heredado.
- UTF-8 (RFC 3629, Pike y Thompson 1992) es un superconjunto estricto de ASCII: los 128 puntos de código ASCII se codifican como ellos mismos en 1 byte; los puntos de código por encima de U+007F usan 2-4 bytes con bytes de continuación 110xxxxx 10xxxxxx, para que los decodificadores puedan resincronizar byte a byte tras errores.
- EBCDIC (IBM, mainframes de los años 60) es la alternativa de 8 bits a ASCII usada en IBM z/OS. Las posiciones de las letras no son contiguas ('A'=0xC1, 'I'=0xC9, 'J'=0xD1), por lo que el truco de conversión de mayúsculas de ASCII no funciona y los algoritmos de desplazamiento de bits como tolower() necesitan tablas de búsqueda.
- Las variantes nacionales de ISO 646 (Reino Unido, Alemania, Suecia, etc.) reemplazaron un pequeño conjunto de caracteres ASCII con letras específicas del país: la variante británica cambió '#' por '£' en 0x23, la variante alemana cambió puntuación por diéresis. Localización pre-Unicode en pocas palabras.
Ejemplos
Búsqueda rápida de carácter
Carácter: 'A'
Decimal: 65
Hex: 0x41
Binario: 01000001
Octal: 0101
Escape C: \x41 ('\x41' en C / C++ / Python / JavaScript)
La diferencia entre mayúsculas y minúsculas es 0x20 (32 decimal):
'a' = 0x61 (97) = 'A' (0x41) + 0x20
'A' = 0x41 (65) = 'a' (0x61) - 0x20
Por eso alternar el bit 5 (máscara 0x20) cambia entre mayúscula y minúscula.
ch ^ 0x20 alterna A <-> a (funciona para A-Z, a-z, deja el resto sin cambio)Depuración de problemas con saltos de línea
LF (0x0A, decimal 10) - Unix, Linux, macOS moderno '\n'
CR (0x0D, decimal 13) - Mac OS clásico (anterior a OS X), algunos protocolos de red '\r'
CRLF (0x0D 0x0A, '13 10') - Windows, HTTP, SMTP, FTP '\r\n'
Volcado hex de un archivo 'hi\r\n' guardado en Windows:
0000: 68 69 0d 0a hi..
Volcado hex del mismo contenido guardado en Linux ('hi\n'):
0000: 68 69 0a hi.
Efecto en el conteo de líneas:
$ wc -l windows.txt unix.txt
1 windows.txt (1 salto de línea, 0x0D 0x0A)
1 unix.txt (1 salto de línea, 0x0A)
El conteo de bytes difiere (4 vs 3) y herramientas como dos2unix detectan
buscando pares 0x0D 0x0A y eliminando el 0x0D.Referencia de codificación de URL
Conjunto sin reservar + reservado de RFC 3986 (el resto debe codificarse en porcentaje):
sin reservar A-Z a-z 0-9 - _ . ~
reservado ! * ' ( ) ; : @ & = + $ , / ? # [ ]
codificar todo lo demás como %HH, donde HH es hex de 2 dígitos en mayúscula
Caracteres comunes:
espacio 0x20 -> %20 (o '+' dentro de application/x-www-form-urlencoded)
! 0x21 -> %21
" 0x22 -> %22
# 0x23 -> %23
$ 0x24 -> %24
% 0x25 -> %25
& 0x26 -> %26 (separador en cadenas de consulta - codificar siempre dentro de valores)
' 0x27 -> %27
( 0x28 -> %28
) 0x29 -> %29
+ 0x2B -> %2B (o %20 en cuerpos de formulario; allí '+' significa espacio)
, 0x2C -> %2C
/ 0x2F -> %2F (reservado en la ruta, a menudo seguro en consultas)
: 0x3A -> %3A
; 0x3B -> %3B
= 0x3D -> %3D
? 0x3F -> %3F
@ 0x40 -> %40
Ejemplo: https://example.com/path with space and ampersand
Codificado: https://example.com/path%20with%20space%20%26%20ampersandEscapes de caracteres de control y metacaracteres de regex
Códigos de control comunes y sus formas de escape en cadenas de C / Python / JavaScript:
NUL 0x00 '\0' (terminador de cadena en C)
BEL 0x07 '\a' (campana de terminal)
BS 0x08 '\b' (retroceso)
TAB 0x09 '\t' (tabulación horizontal)
LF 0x0A '\n' (salto de línea)
VT 0x0B '\v' (tabulación vertical)
FF 0x0C '\f' (avance de página)
CR 0x0D '\r' (retorno de carro)
ESC 0x1B '\x1b' / '\e' (POSIX) (inicio de secuencia de escape)
DEL 0x7F '\x7f' (suprimir)
Metacaracteres de regex que deben escaparse con \:
^ $ . | ? * + ( ) [ ] { } \
Fragmento de JavaScript que refleja la tabla anterior:
const ctrl = { 0:'NUL', 9:'TAB', 10:'LF', 13:'CR', 27:'ESC', 32:'SP', 127:'DEL' };
for (const [code, name] of Object.entries(ctrl)) {
console.log(`${code.toString().padStart(3)} 0x${(+code).toString(16).padStart(2,'0')} ${name}`);
}
// -> ' 0x20 SP' 0a LF 0d CR etc.Preguntas frecuentes
¿Qué tamaño tiene la tabla ASCII?
El ASCII estándar tiene 128 puntos de código (0-127): 33 caracteres de control (0-31 más 127 DEL) y 95 caracteres imprimibles (del espacio a ~). El 'ASCII extendido' se refiere a varias codificaciones de un solo byte y 256 puntos de código, como Windows-1252 o ISO-8859-1, que en realidad no son ASCII.
¿Por qué el carácter 32 aparece como 'Space' y no como un glifo visible?
El punto de código 32 (0x20) es el carácter espacio. Es imprimible pero invisible. La página muestra la etiqueta 'SP' o 'Space' para que puedas copiarlo; al hacer clic en la fila se copia un espacio real al portapapeles.
¿Para qué sirven los primeros 32 códigos ASCII?
Son caracteres de control de la era del teleimpresor: TAB (9), LF (10), CR (13), ESC (27) y otros. El software actual sigue usando TAB, LF, CR y NUL (0); el resto (BEL, ACK, ENQ, etc.) son sobre todo históricos y solo aparecen en protocolos serie y cabeceras de archivos binarios.
¿ASCII y UTF-8 son lo mismo?
ASCII es una codificación de 7 bits para inglés. UTF-8 es una codificación de longitud variable compatible byte a byte con ASCII en sus primeros 128 puntos de código, así que cualquier archivo ASCII puro también es UTF-8 válido. UTF-8 lo amplía con secuencias de 2-4 bytes para cubrir el resto de Unicode.
¿Cómo convierto entre decimal, hexadecimal y binario para un carácter?
Selecciona una fila para ver las cuatro representaciones. Por ejemplo, 'A' es decimal 65, hex 0x41, octal 0101, binario 01000001. La columna Char es el glifo literal y la columna Description da el nombre Unicode oficial.
¿Por qué esta tabla no incluye é, ñ o 中?
Esos caracteres están fuera del rango ASCII. é y ñ están en Latin-1 (puntos de código 233 y 241); 中 está en CJK Unified Ideographs (U+4E2D). Para ellos usa una herramienta de búsqueda Unicode: ASCII solo llega hasta 127.
¿Cómo escribo un carácter si solo conozco su código ASCII?
En Windows, mantén Alt y teclea el código decimal en el teclado numérico (Alt+65 para A). En macOS y Linux, pega desde esta tabla o usa la función de código hex del método de entrada. En código, usa \xNN (hex), \NNN (octal), o chr(N) (Python) y String.fromCharCode(N) (JavaScript).