stringtranslate.com

Programa de ensamblaje óptimo simbólico

Formulario de codificación SOAP II, 1957

El Programa de ensamblaje óptimo simbólico (SOAP) es un ensamblador para la máquina de procesamiento de datos de tambor magnético IBM 650 , una de las primeras computadoras utilizadas por primera vez en 1954. Fue desarrollada por Stan Poley en el Centro de investigación IBM Thomas J. Watson . [1] SOAP se denomina "óptimo" (u "óptimo") porque intenta almacenar las instrucciones generadas en el tambor de almacenamiento para minimizar el tiempo de acceso de una instrucción a la siguiente. SOAP es un ensamblador multipaso , es decir, procesa el programa fuente más de una vez para poder generar el programa objeto .

La primera versión de SOAP fue reemplazada por SOAP II en 1957, [2] que admitía características de hardware adicionales como registros de índice y memoria de núcleo magnético , luego SOAP IIA en 1958, [3] SOAP 2L, SOAP 2L Tape, SOAP 4000 y SOAP 42 en 1961. [4] SOAP se utilizó como backend del compilador FOR TRANSIT en 1957. [1]

Donald Knuth produjo de forma independiente versiones llamadas SOAP III en 1958 [5] y SUPERSOAP en 1959 [6] en el Case Institute of Technology, ahora parte de la Case Western Reserve University en Cleveland, Ohio . La Oficina Nacional de Estándares de EE. UU. , bajo la dirección de Herbert Howe, también escribió una versión de SOAP, llamada ISOPAR, que supuestamente mejora significativamente la optimización. [7]

Mejoramiento

El IBM 650 utiliza un tambor magnético como almacenamiento principal. El tambor tiene capacidad para hasta 4.000 palabras y gira a 12.500 revoluciones por minuto (RPM), 4,8 ms por rotación, o un tiempo de acceso promedio de 2,4 ms. "Si colocara sus instrucciones secuencialmente en el tambor, tendría que esperar una rotación completa del tambor antes de que la CPU pudiera obtener la siguiente instrucción. Dado que muchas instrucciones en el 650 podrían ejecutarse en aproximadamente 3 milisegundos, intentaría optimizarlas. su código colocando las instrucciones en el tambor de tal manera que el tambor no necesite una revolución completa para acceder a su siguiente instrucción". [8] Cada instrucción contiene la dirección de la siguiente instrucción a ejecutar; en lugar de una serie secuencial de instrucciones, la memoria parece ser una lista enlazada. SOAP optimiza colocando instrucciones que se ejecutarán secuencialmente en ubicaciones alrededor del tambor, de modo que la siguiente instrucción esté disponible lo antes posible después de que finalice la instrucción actual. Se decía que esta optimización hacía que los programas ensamblados "se ejecutaran hasta seis o siete veces más rápido". [1]

Funciones de jabón

Pseudooperaciones

SOAP II admite las siguientes pseudooperaciones (directivas de ensamblaje): [2]

Comentarios

Cada tarjeta de origen puede contener hasta diez caracteres de comentarios en las columnas 63 a 72. Para comentarios más largos, se pueden ingresar hasta treinta caracteres en una Tarjeta de comentarios ( Tipo 1 , '1' en la columna 41) en las columnas 43 a 72.

Referencias

  1. ^ abc Lorenzo, Mark Jones (2019). La historia del lenguaje de programación Fortran. pag. 162.ISBN​ 9781082395949. Consultado el 28 de septiembre de 2020 .
  2. ^ ab IBM Corporation (1957). SOAP II para el sistema de procesamiento de datos IBM 650 (PDF) . Consultado el 27 de septiembre de 2020 .
  3. ^ Corporación IBM (1958). Boletín del sistema de procesamiento de datos IBM 650 . Consultado el 27 de septiembre de 2020 .}
  4. ^ Corporación IBM (1961). SOAP 2L, Cinta SOAP 2L, SOAP 4000 y SOAP 42 (PDF) . Consultado el 27 de septiembre de 2020 .
  5. ^ "JABÓN III". Enciclopedia histórica en línea de lenguajes de programación . Consultado el 27 de septiembre de 2020 .
  6. ^ Knuth, Donald E. (1959). Sistema de ensamblaje SUPERSOAP para el 650 aumentado (PDF) . Consultado el 27 de septiembre de 2020 .
  7. ^ Howe, Herbert. ISOPAR: una nueva y mejorada rutina de ensamblaje de optimización simbólica para IBM 650 (PDF) . Consultado el 28 de septiembre de 2020 .
  8. ^ Kugel, Herb (22 de octubre de 2001). "El IBM 650". Dr. Dobb . Consultado el 28 de septiembre de 2020 .

enlaces externos