Command Palette

Search for a command to run...

Tabla ASCII: La guía completa de códigos de caracteres (0-255)

Tabla ASCII: La guía completa de códigos de caracteres (0-255)

T
Toolz Team
|Aug 23, 2026|15 Min Lectura

Parte de la colección Binario y hexagonal

La primera vez que ASCII realmente me importó, estaba depurando una importación CSV para un complemento de WordPress que seguía dividiendo la dirección de un cliente ' en dos filas. El archivo se veía bien en cada editor en el que lo abrí. Resultó que una exportación había usado un retorno de carro desnudo (código 13) como final de línea, mientras que mi analizador esperaba una fuente de línea (código 10) y un separador de registros perdidos (código 30) se había introducido desde una exportación de mainframe aguas arriba. Ninguno de esos caracteres imprime nada. No puedes verlos. Sólo puedes verlos si tienes una tabla que convierte el byte invisible en un número y un nombre, razón por la cual construí el Mesa ASCII en Toolz.dev y por qué lo mantengo fijado en la pestaña del navegador.

TL;Dr: ASCII asigna cada carácter básico en inglés y un conjunto de señales de control a los números 0-127; conjuntos extendidos como ISO 8859-1 (Latin-1) completan 128-255. Capital A es 65, minúscula a es 97, el espacio es 32 y "invisible" Los códigos 0-31 son caracteres de control como pestaña (9), avance de línea (10) y retorno de carro (13). Si puede leer la tabla, puede decodificar casi cualquier error de codificación de texto, escapar de cualquier carácter de forma segura en HTML y comprender por qué UTF-8, JSON y todos los lenguajes de programación se comportan como lo hacen con las cadenas.

I' He pasado años construyendo cosas que viven y mueren en el manejo de texto (un complemento de administración de WordPress, API de Laravel, interfaces de React) y puedo decirles que un modelo mental funcional de ASCII ahorra más horas de depuración que casi cualquier otra pieza de bajo nivel. conocimiento. Esta guía es la versión que desearía que alguien me hubiera entregado temprano.

¿qué es ASCII y por qué sigue siendo importante?

ASCII significa Código estándar estadounidense para el intercambio de información. Se estandarizó por primera vez en 1963 y se adoptó en la forma que todavía utilizamos como ANSI X3.4-1986 (también publicado internacionalmente como ISO/IEC 646), y la definición de red que todavía se cita en la actualidad lo es RFC 20 (1969). En esencia, es una tabla de búsqueda: una asignación de los números del 0 al 127 a un conjunto específico de caracteres y señales de control. Siete bits, 128 ranuras, un acuerdo que todo el mundo de la informática podría compartir.

Ese acuerdo es la razón por la que un archivo de texto escrito en un servidor Linux en 1990 todavía se abre correctamente en una computadora portátil Mac hoy en día. Antes de los códigos de caracteres estándar, cada fabricante tenía su propio esquema, y mover texto entre máquinas era un problema de traducción. ASCII solucionó los 128 códigos inferiores y nunca se ha movido desde entonces.

Lo que sorprende a la gente es lo que la informática moderna todavía depende directamente de ella. Unicode, el estándar gigante que cubre emoji, chino, árabe y cualquier otro script, hace deliberadamente que sus primeros 128 puntos de código sean idénticos a ASCII. UTF-8, la codificación que impulsa la web, codifica esos primeros 128 puntos de código como bytes únicos con los valores ASCII exactos. Entonces, un archivo de texto ASCII simple lo es además un archivo UTF-8 válido, byte por byte. Cuando comprende ASCII, ha comprendido la base sobre la que se basa el resto de la codificación de texto.

¿cómo está organizada la tabla ASCII?

Los 128 códigos estándar se dividen en unos pocos grupos naturales y conocer el grupo suele ser más útil que memorizar un solo valor.

Caracteres de control (0-31 y 127). Estos son los códigos que no se imprimen. Llevan instrucciones en lugar de glifos: nulo (0), campana (7), retroceso (8), pestaña horizontal (9), avance de línea (10), retorno de carro (13), escape (27) y eliminación (127) son los que usted ' realmente conocerá. Fueron diseñados para controlar máquinas de teletipo y sus fantasmas aún ejecutan todo, desde finales de línea en sus archivos fuente hasta secuencias de escape que colorean la salida de su terminal.

Puntuación y símbolos imprimibles (32-47, 58-64, 91-96, 123-126). El espacio es 32: el código imprimible más bajo y técnicamente un carácter de impresión aunque no muestre nada. El resto son los símbolos esparcidos por tu teclado: ! este 33, @ este 64, ~ es 126.

Dígitos (48-57). Los personajes 0 hasta 9 siéntate en una ejecución ordenada de 48 a 57. Ese orden es deliberado: resta 48 de un código de dígito & # 39;s y obtienes su valor numérico, que es como casi cada & quot;analiza un número de una cadena & quot; comienza la rutina.

Letras mayúsculas (65-90) y letras minúsculas (97-122). A este 65, Z este 90; a este 97, z es 122. La brecha entre una letra y la forma en mayúsculas y minúsculas siempre es exactamente 32.

El rango extendido (128-255) es un animal diferente, y es donde vive la mayor confusión, por lo que tiene su propia sección a continuación.

¿Cuál es la diferencia entre ASCII y ASCII extendido?

El ASCII estándar solo define 128 códigos porque solo usa siete bits. Pero las computadoras almacenan texto en bytes de ocho bits, lo que deja 128 espacios adicionales (128-255) sin usar por el estándar. " ASCII y quot extendidos; es el término general para los diversos esquemas que llenan esos espacios.

El problema - y es grande - es que no existe un ASCII único extendido. Diferentes páginas de códigos asignan los 128 códigos superiores de manera completamente diferente. IBM's página de códigos 437 puso caracteres de dibujo de cuadros allí. Windows-1252 puso comillas rizadas y el signo del euro allí. ISO/IEC 8859-1, conocido como Latin-1, puso allí letras acentuadas de Europa occidental. Un byte con valor 233 es é en latín-1, pero algo más completamente en la página de códigos 437.

En Toolz.dev muestro la asignación ISO 8859-1 (Latin-1) para los códigos 160-255, porque es un estándar publicado real y es la base del conjunto de caracteres HTML original, lo que significa que las entidades HTML nombradas se alinean. Los códigos 128-159 en latín-1 son un segundo bloque de caracteres de control (los controles "C1"), por lo que la herramienta los etiqueta como tales en lugar de pretender que 're imprimibles.

La lección práctica: cuando alguien dice " ASCII extendido," siempre pregunta cuál uno. Una página de códigos que no coincide es la causa clásica del é mojibake se ve cuando un archivo UTF-8 se lee como Latin-1, o los cuadros de glifos faltantes cuando ocurre lo contrario. Comprensión privacidad de datos y cómo las herramientas manejan su texto es una preocupación; Comprender cómo los bytes se asignan a los caracteres es la otra mitad de no volver a sorprenderse nunca más con texto confuso.

¿por qué las mayúsculas y minúsculas difieren exactamente en 32?

Esta es mi pieza favorita de diseño ASCII, porque no es un accidente, es ingeniería. El diseño se eligió de modo que las formas mayúsculas y minúsculas de una letra & 39 difieran sólo en el bit 5, que tiene el valor 32. A tiene 65 años (binario 01000001); a es 97 (binario 01100001). La única diferencia es ese bit único.

Esa decisión significa que un programa puede cambiar de caso con una operación bit a bit en lugar de una tabla de búsqueda. Para mayúsculas y minúsculas, borre el bit 5 (code & ~32); para minúsculas y mayúsculas, configúrelo (code | 32); para intercambiar casos de cualquier manera, voltearlo (code ^ 32). Décadas de bibliotecas de cadenas se construyeron con ese truco antes de que Unicode' las reglas de caso más complejas lo hicieran inseguro para cualquier cosa más allá del ASCII simple. Cuando navegas por la tabla y notas que cada letra mayúscula se encuentra exactamente 32 debajo de su gemelo minúscula, tú'Estamos ante una decisión tomada en la década de 1960 que todavía da forma a cómo se escribe el software.

¿cómo convierto entre caracteres, decimal, hexadecimal y binario?

Cada código ASCII tiene cuatro representaciones comunes y moverse entre ellas es una parte rutinaria del trabajo de bajo nivel. Aquí 's cómo se relacionan con la letra H:

Representación Valor para H Donde lo veas & 39; lo veré
carácter H texto normal
decimal 72 String.fromCharCode(72), chr(72)
hexadecimal 48 Dumpuri hexadecimale, \x48, URL/codificación porcentual
ótega 110 Herramientas Unix más antiguas, \110 escapada
binario 01001000 Operaciones bit a bit, diseño de protocolos

Para deletrear una palabra de hexadecimal, tome cada par de dígitos hexadecimales como un byte: 48 69 es 72 105 en decimal, que es Hi. Para ir en sentido contrario, busque cada carácter y el código #39;s. El Mesa ASCII hace ambas direcciones: muestra las cinco columnas de cada código y su cuadro de búsqueda acepta un carácter, un número decimal y un valor hexadecimal (con o sin a 0x prefijo), una cadena octal o binaria, o incluso un nombre de entidad HTML, por lo que se escribe &, 38, o amp todos saltan al signo comercial.

Si usted & #39;Están convirtiendo rutinariamente cadenas enteras o trabajando en bases numéricas más allá de ASCII, el traductor binario y el Convertidor de base de números son las herramientas complementarias a las que recurro. La tabla ASCII es la referencia; esos dos son los bancos de trabajo.

¿para qué sirven realmente los caracteres de control ASCII?

Los códigos de no impresión 0-031 (más 127) parecen piezas de museo, pero varios de ellos transmiten su vida a diario.

Alimentación de línea (10) y retorno de carro (13) son los dos grandes. En un teletipo, el retorno del carro movía el cabezal de impresión hacia el margen izquierdo y la alimentación de líneas hacía avanzar el papel una línea, dos acciones físicas separadas. Ese legado es la razón por la que los archivos de texto de Windows terminan las líneas con ambos (CRLF13 y luego 10), mientras que Unix y macOS usan solo alimentación de línea (LF, 10). Casi todos los " ¿Por qué mi archivo está lleno de ^M ¿personajes?" El error se remonta a esta división. Mi desastre CSV en la introducción fue exactamente este.

Pestaña horizontal (9) es el carácter de pestaña, un solo byte que los editores representan en varios espacios. Nulo (0) termina cadenas en C y marca "sin datos" en innumerables formatos. Escape (27) introduce las secuencias de control que mueven tu cursor y colorean tu terminal. Campana (7) una vez sonó una campana real; ahora emite un pitido o parpadea la ventana de su terminal.

La razón por la que una buena tabla nombra estos códigos es importante: cuando encuentra un byte 27 en sus datos, "ESC - Escape" le dice instantáneamente que usted ' Estás mirando una secuencia de control de terminal, no texto corrupto. Un número sin procesar te dejaría adivinando.

¿cómo se relaciona ASCII con entidades HTML y el escape seguro?

Si escribe para la web y construye un sólido conjunto de herramientas para desarrolladores significa que lo harás: es necesario escapar de un puñado de caracteres ASCII para que el navegador no los lea mal como marcado. El signo menor que < (60), mai mare-de > (62), signo comercial & (38) y cita doble " (34) son los cuatro peligrosos. Si se dejan sin procesar dentro de HTML, pueden romper su página o abrir un orificio de inyección; escrito como entidades (&lt;, &gt;, &amp;, &quot;) se representan como caracteres literales.

Cada código también tiene una entidad HTML numérica en el formulario &#code;, por lo que incluso un carácter sin entidad nombrada siempre se puede escribir de forma segura. La tabla ASCII enumera la entidad nombrada donde existe y la forma numérica en caso contrario, y al hacer clic en la columna HTML se copia directamente en su portapapeles. Cuando necesita codificar o decodificar un bloque completo de marcado en lugar de buscar un solo carácter, el Entidades HTML la herramienta maneja el trabajo por lotes. Para un recorrido más profundo por las utilidades de codificación que uso día a día, el Guía de herramientas de codificación camina por todo el set.

¿La tabla ASCII es lo mismo que Unicode?

No, pero ellos&#39; son deliberadamente compatibles y vale la pena aclarar la relación. Unicode es un estándar mucho más grande: más de un millón de puntos de código posibles, que cubren todos los sistemas de escritura, además de símbolos y emoji. ASCII, con sus 128 códigos, es un subconjunto pequeño. Lo que los hace jugar muy bien juntos es que los primeros 128 puntos de código de Unicode&#39 se definen como idénticos a ASCII, y UTF-8 codifica exactamente esos 128 como bytes únicos con sus valores ASCII.

La consecuencia es elegante: cualquier archivo ASCII válido es automáticamente un archivo UTF-8 válido. Nunca tendrás que convertir texto en inglés simple entre los dos. En el momento en que superas el código 127 (una letra acentuada, una cita rizada, un emoji), dejas ASCII atrás y tú &#39; Estás firmemente en territorio Unicode de varios bytes, donde un carácter puede ocupar dos, tres o cuatro bytes. La tabla ASCII de Toolz.dev cubre directamente los rangos ASCII y Latin-1, y su codificador de texto informa el punto de código Unicode para cualquier carácter que pegue más allá de ellos, para que pueda ver exactamente dónde termina ASCII y Unicode toma el control.

Preguntas frecuentes

¿Qué es ASCII?

ASCII (código estándar americano para el intercambio de información) es un estándar de codificación de caracteres que asigna letras, dígitos, puntuación y señales de control a los números 0–127. Fue estandarizado como ANSI X3.4 en 1963 y sigue siendo la base de las codificaciones de texto modernos, incluida UTF-8, cuyos primeros 128 puntos de código son idénticos a los ASCII.

¿cuál es el valor ASCII de &quot;A&quot;?

La letra mayúscula &quot;A&quot; tiene el valor ASCII 65 (hexadecimal 41, octal 101, binario 01000001). Minúsculas &quot;a&quot; es 97, exactamente 32 más alto, razón por la cual el bit 5 al invertir cambia una letra entre mayúsculas y minúsculas.

¿Cuál es la diferencia entre ASCII y ASCII extendido?

El ASCII estándar utiliza 7 bits y define 128 códigos (0-127). &quot; ASCII y quot extendidos; utiliza el octavo bit para agregar otros 128 códigos (128-255) para letras acentuadas, símbolos y caracteres de dibujo de cuadros. No existe un ASCII extendido único: diferentes páginas de códigos asignan la mitad superior de manera diferente. Esta tabla muestra la asignación ISO 8859-1 (latín-1), la base del conjunto de caracteres HTML latino-1.

¿Qué son los personajes de control ASCII?

Los códigos 0–31 y 127 son caracteres de control que no son de impresión que llevan instrucciones en lugar de glifos visibles. Los comunes incluyen el avance de línea (10), el retorno de carro (13), la pestaña horizontal (9), el escape (27) y el nulo (0). Originalmente controlaban las máquinas de teletipo y aún terminan líneas, delimitan campos y secuencias de escape de terminales de accionamiento en la actualidad.

¿Cómo convierto hexadecimal a ASCII?

Cada par de dígitos hexadecimales representa un byte, que se asigna a un código ASCII. El hexágono 48 es 72 en decimal, que es &quot;H&quot;; hexágono 69 es 105, que es &quot;i&quot; - entonces 48 69 hechizos &quot;Hi&quot;. Busque en la tabla ASCII el valor hexadecimal (con o sin prefijo 0x) para encontrar el carácter coincidente al instante.

¿Por qué difieren las mayúsculas de las minúsculas por 32 en ASCII?

ASCII se diseñó de modo que la única diferencia entre las formas mayúsculas y minúsculas de una letra &#39;s sea el bit 5 (el valor 32). &quot;A&quot; es 65 y &quot;a&quot; es 97; &quot;Z&quot; es 90 y &quot;z&quot; es 122. Este diseño deliberado permite que los programas cambien de caso con una sola operación bit a bit en lugar de una tabla de búsqueda.

¿La tabla ASCII es lo mismo que Unicode?

No es lo mismo, pero es compatible. Unicode es un estándar mucho más grande que cubre más de un millón de puntos de código en cada sistema de escritura. Sus primeros 128 puntos de código son idénticos a ASCII, y UTF-8 los codifica como bytes individuales, por lo que el texto ASCII válido también es válido UTF-8. La tabla ASCII cubre los rangos ASCII y Latin-1; su codificador informa puntos de código Unicode para caracteres más allá de ellos.

¿mi texto es privado cuando uso la tabla ASCII?

Sí. Toda la tabla se genera en su navegador en JavaScript simple y cualquier texto que pegue en el codificador se procesa localmente; nunca se carga, registra ni almacena, y la herramienta sigue funcionando sin conexión de red una vez que la página se ha cargado.


Escrito por Liton, creador de [Toolz.dev](/, WP Adminify y una larga lista de proyectos de Laravel y React que, tarde o temprano, se redujeron a acertar en los bytes.

Comments

0 comments

0/2000 characters

No comments yet. Be the first to share your thoughts!