El conjunto de caracteres ZX81 es la codificación de caracteres utilizada por la familia de microordenadores Sinclair Research ZX81, que incluye los modelos Timex Sinclair 1000 y Timex Sinclair 1500. Esta codificación utiliza un byte por carácter para 256 puntos de código. No guarda relación con otras codificaciones previamente establecidas, como ASCII o EBCDIC , pero sí está relacionada, aunque no es idéntica, con el conjunto de caracteres de su predecesor, el ZX80 .
Caracteres imprimibles

El conjunto de caracteres tiene 64 glifos únicos presentes en los puntos de código 0–63. Con el bit más significativo activado, el carácter se genera en vídeo inverso , correspondiente a los puntos de código 128–191. Estos 128 valores son los únicos que se pueden mostrar en la memoria de vídeo (conocida como archivo de visualización). Los puntos de código restantes (64–127 y 192–255) se utilizan como caracteres de control, como el 118 para salto de línea o, de forma exclusiva en Sinclair BASIC , para palabras clave, mientras que algunos no se utilizan.
El reducido rango efectivo de tan solo 64 glifos únicos ha provocado la exclusión de muchos caracteres, incluidas las letras minúsculas latinas y símbolos ampliamente utilizados en informática, como el signo de exclamación y la arroba . La ausencia de un apóstrofo llevó a algunos desarrolladores de software a utilizar una coma en su lugar.
Hay 11 caracteres gráficos de bloque , incluyendo el punto de código 0, que también funciona como espacio. Los primeros 8, junto con sus 8 versiones de vídeo inverso (16 puntos de código), proporcionan todas las combinaciones de la celda del carácter dividida en píxeles de bloque en blanco y negro de 2×2 para gráficos de baja resolución de 64×48 píxeles. Estos bloques de 2×2 están presentes en el bloque Unicode de Elementos de Bloque . Otros 3 caracteres proporcionan una celda dividida en píxeles de bloque anchos de 1×2 en negro, blanco o gris tramado . Estos, en combinación con sus versiones de vídeo inverso y algunos de los bloques de 2×2 anteriores, proporcionan una resolución de 32×48 con 3 niveles (blanco, gris tramado, negro). Los 11 caracteres básicos más sus versiones de vídeo inverso, hacen un total de 22 caracteres gráficos de bloque . Los caracteres tramados (de los cuales hay 6) también están disponibles en Unicode (principalmente en el bloque Símbolos para computación heredada ), pero solo en las versiones Unicode 13.0 y posteriores, disponibles a partir de 2020.
El punto de código 11 es el símbolo de comillas dobles (") cuando se usa en el archivo de visualización. La función BASIC CHR$ 192imprime como el mismo carácter, pero se muestra como "" en los listados de código fuente de BASIC; se usa para incluir el carácter literal " en una cadena sin conflicto con el delimitador de cadena ". [ 1 ]
Cambios respecto a la ZX80
El conjunto de caracteres del ZX81 se derivó del conjunto de caracteres del ZX80 . Tienen prácticamente los mismos puntos de código, por ejemplo, para AZ y 0-9, pero los puntos de código son diferentes para los caracteres gráficos de bloques, los símbolos ", -, +, *, /, =, > , < y los tokens de palabras clave de BASIC (con muchos nuevos añadidos). También hay cambios en los caracteres de control. El punto de código 1 ya no es un terminador de cadena no imprimible. La ROM BASIC de 8K del ZX81 también estaba disponible como actualización para el ZX80, reemplazando su ROM BASIC de 4K solo para enteros. [ 2 ]
La fuente del sistema ZX81 utiliza una cuadrícula de 8×8 píxeles por carácter, donde la mayoría de los glifos caben en 6×6 píxeles, dejando dos píxeles de espacio horizontal y vertical entre filas y columnas. La ROM del ZX80 tenía glifos ligeramente más anchos, de 7×6 píxeles, con solo un píxel de espacio horizontal entre ellos. Algunos glifos también recibieron un diseño diferente en la fuente del sistema ZX81, lo cual se aprecia en el *, el 0 tachado y menos redondeado, y los $, C, G y J menos redondeados.
En las versiones posteriores del ZX Spectrum, toda la codificación de caracteres fue reemplazada por el conjunto de caracteres del ZX Spectrum , que es un derivado del ASCII e incluye letras minúsculas y más.
Conjunto de caracteres
La siguiente tabla muestra el conjunto de caracteres del ZX81. Cada carácter se muestra con su posible equivalente Unicode . Los caracteres de espacio y control se representan mediante las abreviaturas de sus nombres.
Véase también
Notas
- 1 2 El punto de código 11 es el símbolo de comillas dobles (") cuando se usa en la memoria de video (llamada archivo de visualización). El punto de código 192,
CHR$ 192, se imprime como el mismo carácter pero se muestra como "" en los listados de BASIC y se usa para incluir el carácter literal " en una cadena sin conflicto con el delimitador de cadena ". [ 1 ] - ↑ El operador de elevación a una potencia de varios caracteres se tokeniza en un punto de código de un solo byte.
- ↑ Eloperador de múltiples caracteres mayor o igual que se convierte en un punto de código de un solo byte.
- ↑ Eloperador de caracteres múltiples menor o igual que se convierte en un punto de código de un solo byte.
- ↑ Eloperador de múltiples caracteres del signo distinto de igual se tokeniza en un punto de código de un solo byte.
Referencias
- 1 2 3 Vickers, Steven (1981). Programación BASIC de Sinclair ZX81 . Sinclair Research Ltd. Archivado del original el 22 de abril de 2007. Recuperado el 24 de marzo de 2016 .
- ↑ "ACTUALIZACIÓN DE ROM BASIC 8K" .
- ↑ Wearmouth, Geoff. "Listado en lenguaje ensamblador del sistema operativo de la ROM del ZX81" . Archivado del original el 15 de agosto de 2015.
- Conjuntos de caracteres
- ZX81