ترتيب التوجيهات [بتات 16] و [org 0x0000
سؤال
أبدأ بعض التجارب في كتابة نواة وأستمتع بالقيام بذلك. لديّ محمل تمهيد أساسي تم القيام به والتوجيهات التالية:
[BITS 16]
[ORG 0x0000]
في البرنامج التعليمي kernel ، يبدأ بـ:
[ORG 0x0000]
[BITS 16]
كنت أتساءل عما إذا كان الترتيب الذي يتم فيه إعطاء هذه التوجيهات يحدث فرقًا؟ أنا أستخدم NASM Version 2.06RC2 ، Opensuse 11.2
نصائح أخرى
لا يهم أي شخص يأتي أولاً ، لكنني أتبع هذا الترتيب عمومًا في برامجي:
cpu 8086
bits 16
org 256
(لان bits 16
هو الافتراضي لتنسيق إخراج صندوق NASM أنا عمومًا لا أحدده بشكل صريح ، إلا عندما يكون هناك بعض bits 32
أجزاء إلى ملف.)
بالمناسبة ، فإن النماذج ذات الأقواس هي أشكال هذه التوجيهات ذات المستوى الأدنى. https://www.nasm.us/xdoc/2.14.02/html/nasmdoc6.html#section-6.1
توجيه البتات له شكل بدائي مكافئ تمامًا ، [بت 16] ، [بت 32] و [بت 64]. نموذج مستوى المستخدم هو ماكرو ليس له وظيفة سوى استدعاء النموذج البدائي.