Autocoder es un conjunto de ensambladores para una serie de computadoras IBM de los años 1950 y 1960. Los primeros autocoders parecen haber sido los primeros ensambladores que proporcionaron una función de macro . [1]
Terminología
Tanto el término autocodificador como el término no relacionado autocódigo , un término de la misma época utilizado en el Reino Unido para los lenguajes de un nivel superior, derivan de la frase codificación automática . Esta se refería en general a los programas que facilitaban la producción de los códigos numéricos en lenguaje de máquina de los programas. [2] "Autocodificación" se ve ocasionalmente y puede referirse a cualquier tipo de sistema de programación. En algunos círculos, "autocodificador" podría usarse de manera genérica para referirse a lo que ahora se llama un macroensamblador. [3]
Historia
Los primeros autocodificadores se lanzaron en 1955 para el IBM 702 , [4] y en 1956 para el casi compatible IBM 705. [ 5] Fueron diseñados por Roy Goldfinger, quien anteriormente había trabajado en el ensamblador NYAP de la Universidad de Nueva York (NYU). [6] [7] Estas máquinas eran máquinas comerciales de longitud de palabra variable , al igual que muchas de las computadoras para las que se lanzó un autocodificador.
Además de los 702 y 705, con el tiempo también hubo autocodificadores para los IBM 1410 y 7010 , [8] [9] IBM 7030 ( Stretch), 7070/7072/7074 , [10] [11] IBM 7080 , [12] y la serie IBM 1400. [13]
Autocodificador tal como se implementó en el IBM 1401
El Sistema de Programación Simbólica [14] (SPS) fue el ensamblador que IBM ofreció cuando anunció originalmente el 1401 como una computadora que solo funcionaba con tarjetas perforadas. El SPS tenía diferentes mnemotecnias y un formato de entrada fijo diferente al de Autocoder. Carecía de las características de Autocoder y, más tarde, se utilizó generalmente solo en máquinas que no tenían unidades de cinta, es decir, que solo funcionaban con tarjetas perforadas. [15] [16]

1401 Autocoder [17] [18] es el Autocoder más conocido, sin duda debido en parte al éxito general de esa serie de máquinas. Autocoder era el lenguaje principal de esta computadora, y sus capacidades macro facilitaban el uso del Sistema de Control de Entrada/Salida que aliviaba la carga de programación. [19] [20] [21] Autocoder también tenía la capacidad de procesar código escrito para SPS.
El 1401 estaba disponible en seis configuraciones de memoria, con 1400, 2000, 4000, 8000, 12000 o 16000 caracteres de seis bits. El modelo de 8000 caracteres era el mínimo necesario para ejecutar la aplicación ensambladora Autocoder completa, incluido IOCS. Sin embargo, estaba disponible un ensamblador de subconjunto de lenguaje para su uso con tan solo 1400 posiciones de memoria. Se podía producir un archivo de objeto cargable , en tarjetas perforadas o cinta magnética, en un modelo de 8000 caracteres que luego se podía ejecutar en una máquina de 4000 caracteres. El subconjunto de lenguaje limitado solo procesaba tarjetas perforadas y requería 4 pases con salidas de tarjetas perforadas intermedias.
Influencia
La popularidad de Autocoder inspiró a otros ensambladores. El "Easycoder" para el Honeywell 200 , un ordenador similar al 1401, se parecía a Autocoder. Otros fabricantes a veces construían productos que competían, como la "Técnica de Autocoder Electrónico Nacional" (NEAT) de NCR . [22]
En la década de 1960, la Universidad Estatal de Pensilvania desarrolló un compilador "Dual Autocoder Fortran Translator" (DAFT) para el IBM 7074, que facilitó enormemente la escritura (dentro de un solo programa) de líneas de instrucciones de autocodificador intercaladas libremente con líneas de código Fortran. Esto permitió la codificación simbólica a nivel de instrucción de máquina dentro de un programa Fortran de nivel superior, lo que resultó especialmente útil para optimizar la velocidad de los bucles internos o para hacer uso de la inusual arquitectura de palabras decimales del IBM 7074. [ cita requerida ]
Los Laboratorios Bell desarrollaron un programa llamado "Peripheral Equipment Symbolic Translator" (PEST), que era un ensamblador cruzado 1401 que se ejecutaba en el 709 / 709x y aceptaba un subconjunto del Autocoder 1401. [16] [23]
Una copia de los programas fuente para SPS-1, SPS-2 y Autocoder fue donada al Instituto Charles Babbage , de la Universidad de Minnesota en 1985, por Gary Mokotoff , autor de SPS y coautor de Autocoder. [24]
Notas
- ^ Salomón 1993, pág. 8.
- ^ Tolva 1955.
- ^ Para un ejemplo, véase Allen 1981, pág. 540.
- ^ Catálogo de entradas de derechos de autor. Tercera serie: 1956. Oficina de Derechos de Autor, Biblioteca del Congreso. 1957. p. 305. Consultado el 23 de agosto de 2019 .
- ^ 705 sistema autocodificador - manual de información (PDF) , IBM Systems Reference Library (segunda edición), IBM Corporation, febrero de 1957, 22-6726-1
- ^ Goldfinger 1956.
- ^ La enciclopedia de lenguajes informáticos Archivado el 16 de septiembre de 2007 en Wayback Machine .
- ^ IBM 1410 Autocoder (PDF) , IBM Systems Reference Library (segunda edición), IBM Corporation, febrero de 1964, C28-0309-1
- ^ Sistema operativo IBM 1410/700 (1410-PR-155) - Autocodificador - 1410-AU-968 (PDF) , IBM Systems Reference Library (tercera edición), IBM Corporation, noviembre de 1964, C28-0336-2
- ^ Manual de referencia - Codificador automático de cuatro cintas IBM 7070/7074 (PDF) , IBM Systems Reference Library (segunda edición), IBM Corporation, abril de 1961, C28-6102-1
- ^ Manual de referencia - Sistemas de programación de la serie IBM 7070 - Autocoder (PDF) , Biblioteca de referencia de sistemas IBM (primera edición), IBM Corporation, 1961, C28-6121-0
- ^ Manual de referencia - Sistemas de programación IBM 7080 - Procesador 7080: lenguaje de autocodificación (PDF) , Biblioteca de referencia de sistemas IBM (primera edición), IBM Corporation, 1962, C28-6263
- ^ 7010: Weik 1964, pág. 0160; 7030: "IBM Stretch (también conocido como sistema de procesamiento de datos IBM 7030)"" Compiladores y computadoras: socios en el rendimiento" (PDF); 7070: Tom Van Vleck, "El IBM 7070", un tercer estudio sobre los sistemas informáticos digitales electrónicos domésticos, Martin H. Weik, "IBM 7070", Laboratorios de investigación balística, Campo de pruebas de Aberdeen, Maryland; 7080: [1]; Serie 1400: [2], Codificador automático 1410 (PDF).
- ^ SISTEMA DE PROGRAMACIÓN SIMBÓLICA IBM 1401: ESPECIFICACIONES PRELIMINARES (PDF) , IBM, 1960, J28-200-1
- ^ Thelen, Ed. "IBM-1401" . Consultado el 5 de marzo de 2020 .
- ^ ab Van Vleck, Tom. "1401s I have know" (He conocido a 1401). multicians.org . Consultado el 5 de marzo de 2020 .
- ^ Especificaciones del lenguaje y procedimientos operativos del autocodificador (en cinta) IBM 1401 y 1460 Programa 1401-AU-037 (PDF) , IBM Systems Reference Library (Primera edición), IBM Corporation, noviembre de 1964, C24-3319-0
- ^ Especificaciones del lenguaje del codificador automático (en disco) IBM 1401, 1440 y 1460 (PDF) , IBM Systems Reference Library (tercera edición), IBM Corporation, abril de 1966, C24-3258-2
- ^ IBM Corporation. Guía ejecutiva del sistema de procesamiento de datos IBM 1440 (PDF) . Consultado el 8 de marzo de 2020 .
- ^ Solomon 1993, pág. 8
- ^ "La enciclopedia de lenguajes informáticos". Archivado desde el original el 17 de septiembre de 2007. Consultado el 18 de marzo de 2007 ..
- ^ Weik 1964, pág. 0202.
- ^ IBM Corporation (1962). Catálogo de programas para sistemas de procesamiento de datos de IBM KWIC Index (PDF) . p. 248 . Consultado el 5 de marzo de 2020 .
- ^ Colección de Gary Mokotoff de listados de programas IBM 1401, 1959-1961
Referencias
- Allen, FE, "La historia de la tecnología de procesadores de lenguaje en IBM", IBM Journal of Research and Development, 25 (5), págs. 535–548 (septiembre de 1981). [3]
- Goldfinger, Roy, "El codificador automático IBM Type 705". Actas de la East Joint Computer Conf., San Francisco, 1956.
- Hopper, Grace, "Codificación automática para computadoras digitales" en la Conferencia de computadoras de alta velocidad, Universidad Estatal de Luisiana (1955) Conferencia de computadoras de alta velocidad, Universidad Estatal de Luisiana, 16 de febrero de 1955, Remington Rand, Inc., 1955. [4]
- Salomon, David (febrero de 1993). Chivers, Ian D. (ed.). Ensambladores y cargadores (PDF) . Serie Ellis Horwood en Computadoras y sus aplicaciones (1.ª ed.). Chicester, West Sussex, Reino Unido: Ellis Horwood Limited / Simon & Schuster International Group . ISBN 0-13-052564-2Archivado (PDF) del original el 23 de marzo de 2020. Consultado el 1 de octubre de 2008 .[5][6] (xiv+294+4 páginas)
- Weik, Martin H., A Fourth Survey of Domestic Electronic Digital Computing Systems, Informe BRL N.º 1227, enero de 1964 (Laboratorios de investigación balística, Aberdeen Proving Ground, Maryland). [7]
Enlaces externos
- Especificaciones del codificador automático IBM 1401 J24-1434-2
- Manual del codificador automático IBM 1410 de 1964 de Bitsavers
- Ejemplo de autocodificador IBM 1401