Son zamanlarda sayısallaştırıldı ve bir repoya dönüştü, orijinal Apollo 11 rehberlik bilgisayar kaynak kodu Github'da görüntülenmek için hazırlandı .
In MAIN.agc , repo yazar Yorumlara o
büyük monolitik kaynak kodunu daha küçük, daha yönetilebilir parçalara, yani tek tek kaynak # dosyalarına bölün
Biraz sonra yazar
Kaynak dosyaları tek tek bir araya getirmek ve ardından yürütülebilir dosyayı oluşturmak için bağlamak yerine on binlerce kaynağın neden içerme yoluyla birleştirildiği makul olarak sorulabilir. Cevap, orijinal geliştirme ekibinin bağlayıcısı olmadığıdır.
Bağlayıcıların ne olduğunu biliyorum ve onların amacını anlıyorum- ama "ASM'nin katıldığı sürece" ifadesini hiç duymadım.
Ne anlama geliyor? Bağlayıcıların programlamada büyük bir anlaşma olduğu düşünüldüğünde, bağlayıcıların "içerme yoluyla" değiştirilmesinin ne olduğunu ve nasıl çalıştığını merak ediyorum.
#include
içinde yönergesiC
. Başka bir deyişle, daha sonra birbirine bağlanan bileşenlere derlenen kod bingi yerine$
, büyük bir kaynak dosyası oluşturmak için gösterimin bu dosyanın içeriğini içerdiği anlaşılıyor. Bu büyük kaynak dosya daha sonra tek bir varlık olarak derlenir.