RADIX 50 [ 1 ] [ 2 ] [ 3 ] o RAD50 [ 3 ] (también conocido como RADIX50 , [ 4 ] RADIX-50 [ 5 ] o RAD-50 ), es una codificación de caracteres solo en mayúsculas creada por Digital Equipment Corporation (DEC) para su uso en sus computadoras DECsystem , PDP y VAX .
El repertorio de 40 caracteres de RADIX 50 (050 en octal ) puede codificar seis caracteres más cuatro bits adicionales en una palabra de máquina de 36 bits ( PDP-6 , PDP-10 /DECsystem-10, DECSYSTEM-20 ), tres caracteres más dos bits adicionales en una palabra de 18 bits ( PDP-9 , [ 2 ] PDP-15 ), [ 6 ] o tres caracteres en una palabra de 16 bits ( PDP-11 , VAX). [ 3 ]
La codificación real difiere entre los sistemas de 36 bits y de 16 bits.
sistemas de 36 bits
En los sistemas DEC de 36 bits, RADIX 50 se usaba comúnmente en las tablas de símbolos para ensambladores o compiladores que admitían nombres de símbolos de seis caracteres de un alfabeto de 40 caracteres. Esto dejaba cuatro bits para codificar las propiedades del símbolo.
Debido a sus similitudes con el esquema de codificación de caracteres SQUOZE utilizado en el sistema operativo SHARE de IBM para representar símbolos de código objeto, la variante de DEC también se denominó a veces DEC Squoze , [ 7 ] sin embargo, IBM SQUOZE empaquetaba seis caracteres de un alfabeto de 50 caracteres más dos bits de bandera adicionales en una palabra de 36 bits. [ 6 ]
Normalmente, en sistemas de 36 bits, la radio 50 no se utilizaba para codificar cadenas de caracteres ordinarias; los nombres de archivo se codificaban normalmente como seis caracteres de seis bits , y las cadenas ASCII completas como cinco caracteres de siete bits y un bit sin usar por palabra de 36 bits.
sistemas de 18 bits
RADIX 50 (también llamado formato Radix 50 8 [ 2 ] ) se utilizó en las computadoras PDP-9 [ 2 ] y PDP-15 [ 8 ] de 18 bits de Digital para almacenar símbolos en tablas de símbolos, dejando dos bits adicionales por palabra de 18 bits ("bits de clasificación de símbolos").
sistemas de 16 bits
Algunas cadenas en los sistemas de 16 bits de DEC se codificaban como bytes de 8 bits, mientras que otras utilizaban RADIX 50 (entonces también llamado MOD40 ). [ 3 ] [ 9 ]
En RADIX 50, las cadenas se codificaban en palabras sucesivas según fuera necesario, y el primer carácter de cada palabra se ubicaba en la posición más significativa.
Por ejemplo, utilizando la codificación PDP-11, la cadena "ABCDEF", con los valores de caracteres 1, 2, 3, 4, 5 y 6, se codificaría como una palabra que contiene el valor 1×40 2 + 2×40 1 + 3×40 0 =1683 , seguido de una segunda palabra que contiene el valor 4×40 2 + 5×40 1 + 6×40 0 =6606. Por lo tanto, las palabras de 16 bits codificaban valores que iban desde 0 (tres espacios) hasta63 999 ("999"). Cuando una palabra tenía menos de tres caracteres, la última palabra de la cadena se rellenaba con espacios al final. [ 3 ]
Hubo varias variaciones menores de esta codificación con diferentes interpretaciones de los puntos de código 27, 28, 29. Cuando se usó RADIX 50 para nombres de archivo almacenados en medios, los puntos de código representan los caracteres $, %, *y se mostrarán como tales al listar el directorio con utilidades como DIR. [ 10 ] Al codificar cadenas en el ensamblador PDP-11 y otros lenguajes de programación PDP-11, los puntos de código representan los caracteres $, ., %y se codifican como tales con la macro RAD50 predeterminada en el archivo de macros globales, y esta codificación se usó en las tablas de símbolos . Parte de la documentación inicial para el sistema operativo RT-11 consideró que el punto de código 29 no estaba definido. [ 3 ]
El uso de RADIX 50 fue la base de las convenciones de tamaño de nombre de archivo utilizadas por los sistemas operativos PDP-11 de Digital Equipment Corporation . Mediante la codificación RADIX 50, seis caracteres de un nombre de archivo podían almacenarse en dos palabras de 16 bits, mientras que tres caracteres adicionales de extensión (tipo de archivo) podían almacenarse en una tercera palabra de 16 bits. De manera similar, un nombre de dispositivo de tres caracteres, como "DL1", también podía almacenarse en una palabra de 16 bits. El punto que separaba el nombre de archivo de su extensión, y los dos puntos que separaban el nombre del dispositivo del nombre de archivo, se daban por sentados (es decir, no se almacenaban y siempre se asumía su presencia).
Véase también
Referencias
- 1 2 "Capítulo VI: El cargador - La representación de símbolos en base 50". Manual del sistema de multiprogramación PDP-6 (PDF) . Maynard, Massachusetts, EE. UU.: Digital Equipment Corporation (DEC). 1965. pág. 57. DEC-6-0-EX-SYS-UM-IP-PRE00. Archivado (PDF) del original el 14 de julio de 2014. Recuperado el 10 de julio de 2014 .(1+84+10 páginas)
- 1 2 3 4 5 "Apéndice 1". Programas de utilidad PDP-9 - Sistema de software avanzado - Manual de referencia del programador (PDF) . Maynard, Massachusetts, EE. UU.: Digital Equipment Corporation . 1968. Número de pedido DEC-9A-GUAB-D. Archivado (PDF) del original el 4 de junio de 2020. Recuperado el 4 de junio de 2020 .
- 1 2 3 4 5 6 7 "8.10 .RAD50". PAL-11R Ensamblador - Manual del programador - Lenguaje de ensamblaje de programas y ensamblador reubicable para el sistema operativo de disco (2.ª edición impresa revisada). Maynard, Massachusetts, EE. UU.: Digital Equipment Corporation . Mayo de 1971 [febrero de 1971]. pág. 8-8. DEC-11-ASDB-D . Recuperado el 18 de junio de 2020. pág. 8-8:
[…] Los programas de sistemas
PDP-11
a menudo manejan símbolos en una forma codificada especial llamada RADIX 50 (esta forma a veces se denomina MOD40). Esta forma permite que 3 caracteres se empaqueten en 16 bits; por lo tanto, cualquier símbolo de 6 caracteres puede almacenarse en dos palabras. El único operando tiene la forma /CCC/ donde la barra (el delimitador) puede ser cualquier carácter imprimible excepto = y
: . Los delimitadores encierran los caracteres que se van a convertir, que pueden ser de la A a la Z, del 0 al 9, el dólar ($), el punto (.) y el espacio ( ). Si hay menos de 3 caracteres, se consideran alineados a la izquierda y se asumen espacios al final. […] El algoritmo de empaquetado es el siguiente: […] A. Cada carácter se traduce a su equivalente RADIX 50 como se indica en la siguiente tabla: Carácter - Equivalente RADIX 50 (octal): (espacio) - 0, A–Z - 1–32, $ - 33, . - 34, 0–9 - 36–47. Tenga en cuenta que se podría definir otro carácter para el código 35. […] B. Los equivalentes RADIX 50 para los caracteres del 1 al 3 (C1, C2, C3) se combinan de la siguiente manera: RESULTADO = ((C1*50) + C2)*50 + C3 […]
- 1 2 Durda IV., Frank (2004). "Referencia del código de caracteres RADIX50" . Archivado del original el 31 de marzo de 2005. Recuperado el 31 de marzo de 2005 .
- 1 2 "Apéndice B.3: Constantes y conjunto de caracteres de base 50". Manual de referencia del lenguaje Compaq Fortran 77. Compaq Computer Corporation . 1999. Archivado del original el 14 de octubre de 2012. Recuperado el 14 de octubre de 2012 .
- 1 2 Jones, Douglas W. (2018). "Clase 7, Códigos objeto, cargadores y enlazadores: pasos finales en el camino hacia el código máquina" . Sistemas operativos, primavera de 2018. Parte de la colección CS:3620 Sistemas operativos. Departamento de Ciencias de la Computación, Universidad de Iowa . Archivado del original el 6 de junio de 2020. Recuperado el 6 de junio de 2020 .
- ↑ Murrell, Stephen J. (2005). "Códigos de caracteres DEC/PDP" . rabbit.eng.miami.edu . Universidad de Miami . Tabla de caracteres DEC Squoze. Archivado del original el 19 de junio de 2020. Consultado el 19 de junio de 2020 .
- 1 2 "Apéndice A". Programas de utilidad PDP-15 - Manual de referencia del programador (PDF) . Maynard, Massachusetts, EE. UU.: Digital Equipment Corporation . 1969. Número de pedido DEC-15-YWZA-D. Archivado (PDF) del original el 14 de mayo de 2026. Recuperado el 14 de mayo de 2026 .
- ↑ PDP-11 Getting DOS on the Air (1.ª ed.). Maynard, Massachusetts, EE. UU.: Digital Equipment Corporation . Agosto de 1971. DEC-11-SYDC-D . Consultado el 18 de junio de 2020 .
- ↑ "Demostración de RT11 Radix50" .
Lecturas adicionales
- Williams, Al (22 de noviembre de 2016). "Squoze your data" . Hackaday . Archivado del original el 6 de junio de 2020. Recuperado el 6 de junio de 2020 .
Enlaces externos
- https://github.com/turbo/ptt-its/blob/master/doc/info/midas.25
- Codificación de caracteres
- Conjuntos de caracteres
- Corporación de Equipos Digitales
- Introducciones relacionadas con la informática en 1964