stringtranslate.com

Monitor de código de máquina

Monitor de código de máquina en una computadora de placa única W65C816S , que muestra el desensamblaje del código , así como los volcados de memoria y registros del procesador
Monitor de código de máquina Apple II 6502

Un monitor de código de máquina ( también conocido como monitor de lenguaje de máquina ) es un software que permite a un usuario ingresar comandos para ver y cambiar las ubicaciones de memoria en una computadora , con opciones para cargar y guardar contenidos de memoria desde/hacia el almacenamiento secundario . Algunos monitores de código de máquina con todas las funciones brindan un control detallado ("paso a paso") de la ejecución de programas de lenguaje de máquina (de manera muy similar a un depurador ) e incluyen capacidades de ensamblaje y desensamblaje de código de dirección absoluta .

Motorola publicó el monitor ROM MIKBUG para el 6800 en 1973 y el monitor ROM BUFFALO para el 68HC11 .

Los monitores de código de máquina se hicieron populares durante la era de las computadoras domésticas de los años 1970 y 1980 y, a veces, estaban disponibles como firmware residente en algunas computadoras (por ejemplo, los monitores integrados en las computadoras portátiles Commodore 128 , Heathkit H89 y Zenith). A menudo, los fabricantes de computadoras confían en sus monitores residentes en ROM para permitir que los usuarios reconfiguren sus computadoras luego de la instalación de hardware de actualización, como memoria principal expandida, unidades de disco adicionales o pantallas de video diferentes.

No era algo inaudito realizar toda la programación en un monitor en lugar de un ensamblador simbólico completo. Incluso después de que los ensambladores con todas las funciones se volvieran fácilmente disponibles, un monitor de código de máquina era indispensable para depurar programas. La técnica habitual era establecer puntos de interrupción en el código que se estaba probando (por ejemplo, con una instrucción BRK en lenguaje ensamblador 6502 [1] [2] [3] ) e iniciar el programa. Cuando el microprocesador encontraba un punto de interrupción, el programa de prueba se interrumpía y el control se transfería al monitor de código de máquina. Por lo general, esto activaba un volcado de registros y luego el monitor esperaba la entrada del programador. Las actividades en este punto podían incluir examinar los contenidos de la memoria, parchear el código y/o tal vez alterar los registros del procesador antes de reiniciar el programa de prueba.

En la mayoría de los sistemas en los que se emplean lenguajes de alto nivel, se utilizan depuradores para presentar una visión más abstracta y amigable de lo que sucede dentro de un programa. Sin embargo, el uso de monitores de código de máquina persiste, especialmente en el área de computadoras construidas por aficionados . [ cita requerida ]

Referencias

  1. ^ RJ Tocci y LP Laskowski (1979). Microprocesadores y microcomputadoras: hardware y software . Prentice-Hall. pág. 379. ISBN 9780135813225.
  2. ^ LA Leventhal (1986). 6502 Programación en lenguaje ensamblador . Osborne/McGraw-Hill. ISBN 9780078812163.
  3. ^ AF Kuckes y BG Thompson (1987). Apple II en el laboratorio . Archivo UP. p. 93. ISBN 9780521321983.