El Programa de Ensamblaje Simbólico (SAP) es un programa ensamblador para la computadora IBM 704. Fue escrito por Roy Nutt en United Aircraft Corporation y distribuido por el grupo de usuarios SHARE a partir de 1956 como el Programa de Ensamblaje Share . SAP sucedió a un programa anterior llamado NYAP1 (Programa de Ensamblaje de Nueva York 1), al que se parecía mucho, [ 1 ] y se convirtió en el ensamblador estándar para los usuarios de la 704. [ 2 ] Estableció la forma externa de un lenguaje ensamblador que serviría de modelo para todos sus sucesores y que se mantiene prácticamente sin cambios hasta el día de hoy. [ 3 ]
DARSIMCO , abreviatura de Dartmouth Simplified Code , era un lenguaje de programación sencillo escrito por John Kemeny (quien más tarde fue codesarrollador de BASIC ) en 1956 que expandía operaciones matemáticas simples en un programa que luego sería ensamblado por SAP.
Descripción
SAP es un ensamblador de dos pasadas . Es capaz de ejecutarse en un procesador 704 con un mínimo de 4 KB de memoria principal de 36 bits. Esta configuración permite hasta 1097 entradas en la tabla de símbolos . Se puede utilizar memoria principal adicional, más allá de 4 KB, para admitir más entradas en la tabla de símbolos. [ 4 ]
La entrada y salida de datos para SAP se realiza mediante tarjetas perforadas o imágenes de tarjetas en cinta. La entrada tiene un formato fijo. [ 2 ]
Formato de entrada
Formato de salida
La salida consiste en tarjetas perforadas absolutas o reubicables, o imágenes de tarjetas. La salida son datos binarios en las doce filas de la tarjeta: 12, 11 y 0-9. Cada fila contiene dos palabras de 36 bits en las columnas 1-36 y 37-72, indicadas como izquierda (I) y derecha (D), respectivamente. Los datos se numeran convencionalmente por fila y posición; por ejemplo, las columnas 1 a 36 de la fila 9 se designan como 9I, y las columnas 37 a 72 de la misma fila como 9D. Dentro de una palabra, los bits se designan, de izquierda a derecha, como S (bit de signo) y del 1 al 35; así, la posición del bit 13 de la palabra izquierda en la fila 6 se designa como 6I13.
La palabra 9L de cada tarjeta es una palabra de control, y la 9R es una suma de verificación opcional . La palabra de control contiene bits que indican, por ejemplo, si los datos de la tarjeta son absolutos o reubicables, si hay o no una suma de verificación, la ubicación absoluta o nominal de los datos en esta tarjeta y el número de palabras de datos que contiene. [ 5 ]
Referencias
- ↑ Orchard-Hays, William. "Adaptabilidad de los códigos de programación lineal" (PDF) . Centro de Información Técnica de Defensa . Archivado del original (PDF) el 31 de mayo de 2019. Recuperado el 31 de mayo de 2019 .
- 1 2 Helwig, F.; et al. "CODIFICACIÓN para la COMPUTADORA MIT-IBM 704" (PDF) . bitsavers.org . Recuperado el 8 de abril de 2018 .
- ↑ Padua, David A. (2000). "CS321: I. Lenguajes de programación" (PDF) . Polaris Research Group . pág. 13. Archivado del original (PDF) el 24 de marzo de 2024. Recuperado el 21 de abril de 2025 .
- ↑ Nutt, Roy. "Ensamblador SHARE de United Aircraft Corporation" . Consultado el 9 de abril de 2018 .
- ↑ Zurlinden, Donald H. "IBM MODEL-704 GUIDEBOOK" (PDF) . eScholarship.org . Laboratorio Nacional Lawrence Berkeley . Consultado el 31 de mayo de 2019 .
Enlaces externos
- Fuente y documentación en el archivo de software IBM 704
- software de la década de 1950
- Software libre y de código abierto
- Lenguajes de programación descontinuados
- Lenguajes de programación creados en 1956
- Serie IBM 700/7000
- Software libre y de código abierto (stubs)