Recientemente digitalizado y convertido en un repositorio, el código fuente original de la computadora de guía Apollo 11 se puso a disposición para su visualización en Github .
En MAIN.agc , el autor del repositorio comenta que
divida el enorme código fuente monolítico en fragmentos más pequeños y manejables, es decir, en archivos fuente individuales #.
Un poco más tarde, el autor afirma
Se puede preguntar razonablemente por qué se unen decenas de miles de líneas de origen mediante la inclusión, en lugar de simplemente ensamblar los archivos de origen individualmente y luego vincularlos para formar el ejecutable. La respuesta es que el equipo de desarrollo original no tenía enlazador.
Sé qué son los enlazadores y entiendo el punto de ellos, pero nunca he oído hablar de la frase (en lo que respecta a ASM) "unida por medio de la inclusión".
¿Qué significa esto? Teniendo en cuenta que los enlazadores son un gran problema en la programación, tengo curiosidad por saber qué es esta sustitución de enlazadores por "medios de inclusión" y cómo funciona.
#include
directiva enC
. En otras palabras, en lugar del código bing compilado en componentes que luego se unen, parece que la$
notación incluye el contenido de ese archivo, para generar un archivo fuente grande. Ese gran archivo fuente se compila como una sola entidad.