stringtranslate.com

MACRO-10

MACRO-10 es un lenguaje ensamblador con amplias funciones de macros para los sistemas informáticos mainframe basados ​​en PDP-10 de DEC , el DECsystem-10 y el DECSYSTEM-20 . MACRO-10 está implementado como un ensamblador de dos pasadas .

Ejemplos de programación

Un programa sencillo de " ¡Hola mundo! " en ensamblador MACRO-10, para ejecutarse en TOPS-10 , adaptado de un ejemplar de una gran colección de programas de "¡Hola mundo!" en varios lenguajes: [1]

 TÍTULO HOLA MUNDO ; 'Hola mundo' en MACRO-10 para TOPS-10 BUSCAR UUOSYM ; Hacer que los nombres de los símbolos UUO estén disponibles      LAB: ASCIZ / Hola , mundo ! / ; Cadena ASCII terminada en NUL con CRLF    INICIO: REINICIAR ; Inicializar trabajo para limpiar estado de ejecución SALIDA: OUTSTR LAB ; Cadena de salida que comienza en LAB: MONRT. ; Regresar al monitor JRST SALIDA ; Reiniciar en SALIDA: si el usuario CONTINÚA el trabajo FIN INICIO ; Finalizar ensamblaje, establecer dirección de inicio del programa             

Si este programa se guarda en el archivo HELLO.MAC , se puede ensamblar, vincular y ejecutar de la siguiente manera (el indicador del sistema TOPS-10 está al .comienzo de las líneas):

.COMPILE HOLA.MAC / DLIST MACRO: HOLA   SALIDA.CARGAR ENLACE HOLA : Cargando  SALIDA.GUARDAR HOLA guardado .CORRERHola Mundo ! .

El archivo de listado de ensamblaje generado por la /DLISTopción (Disk LISTing) del COMPILEcomando:

HOLA MUNDO MACRO % 53 B ( 1247 ) 17 : 29 7 - Abr - : 9 Página 1 HOLA MAC 7 - Abr - : 9 17 : 29           TÍTULO HOLA MUNDO ; 'Hola mundo' en MACRO-10 para TOPS-10 BUSCAR UUOSYM ; Hacer que los nombres de los símbolos UUO estén disponibles       000000' 110 145 154 154 157 LAB: ASCIZ / ¡Hola , mundo ! 000001' 054 040 167 157 162 000002' 154 144 041 015 012 / ; Cadena ASCII terminada en NUL con CRLF 000003' 000 000 000 000 000                              000004' 047 00 0 00 000000 INICIO: REINICIO ; Inicializar trabajo para limpiar estado de ejecución 000005' 051 03 0 00 000000' SALIDA: OUTSTR LAB ; Cadena de salida que comienza en LAB: 000006' 047 01 0 00 000012 MONRT.; Regresar al monitor 000007' 254 00 0 00 000005' JRST SALIDA ; Reiniciar en SALIDA: si el usuario CONTINÚA el trabajo 000004' FIN INICIO ; Finalizar ensamblaje, establecer dirección de inicio del programa                                       NO SE DETECTARON ERRORES  LA INTERRUPCIÓN DEL PROGRAMA ES 000010. EL TIEMPO DE CPU UTILIZADO ES 58 : 25.100      36 P NÚCLEO UTILIZADO  HOLA MUNDO MACRO % 53 B ( 1247 ) 17 : 29 7 - Abr - : 9 Página S - 1 HOLA MAC 7 - Abr - : 9 17 : 29 TABLA DE SÍMBOLOS            LAB 000000 ' MONRT. 047040 000012 SALIDA 000005 ' OUTSTR 051140 000000 REINICIO 047000 000000 INICIO 000004 '         

La fecha ":9" es un problema del año 2000. En el sitio web "99 Bottles of Beer" se puede consultar un programa de ejemplo MACRO-10 más complejo que reproduce una versión de la canción 99 Bottles of Beer . [2]

Para cuerpos de código más grandes, gran parte del código MACRO-10 para los sistemas TOPS-10 y TOPS-20 está disponible en los archivos de cinta Trailing Edge PDP-10. [3]

Referencias

  1. ^ Wolfram Rösler, "The Hello World Collection". Recuperado el 16 de noviembre de 2016.
  2. ^ "99 botellas de cerveza" Consultado el 10 de abril de 2009.
  3. ^ Archivo de software del Trailing Edge PDP-10

Enlaces externos