Árpád Gellért, Rodica Baciu
Programare în limbaj de asamblare - Îndrumar de laborator
ISBN
978-606-8030-79-1
Sibiu, 2010
14,5x20,5 cm
80 pag.
Acest îndrumar de laborator se adresează studenţilor din anul 2 de la specializările „Calculatoare”, „Tehnologia informaţiei” şi „Ingineria sistemelor multimedia”. Îndrumarul este aferent cursului „Introducere în organizarea calculatoarelor şi limbaj de asamblare” şi este rodul unei activităţi, ce se întinde pe mai mulţi ani, de întocmire a unor lucrări de laborator care să vină în sprijinul studenţilor în efortul lor de a învăţa să programeze în limbaje de asamblare. Lucrările de laborator sunt însoţite de aplicaţii scrise în limbajul 8086. Alegerea limbajului 8086 ca suport pentru învăţarea limbajului de asamblare s-a bazat pe următoarele considerente: limbajul 8086 poate fi rulat pe oricare microprocesor superior lui 8086, mediul Borland C oferă utilitare pentru dezvoltarea programelor în limbaj de asamblare 8086.
Printre avantajele limbajului de asamblare se numără viteza ridicată de execuţie a programelor, spaţiul de memorie consumat relativ redus dar şi accesul la anumite resurse hardware. Un motiv în favoarea programării în limbaj de asamblare îl reprezintă amploarea dezvoltării sistemelor dedicate (microcontrolere, procesoare de semnal, aparate foto şi camere video, aparate electrocasnice, telefoane mobile, jocuri electronice, switch-uri pentru reţele, etc), caracterizate în principal de consumuri reduse de putere şi memorii de capacităţi relativ reduse. De asemenea, medii integrate de programare-dezvoltare şi compilatoare de limbaje de nivel înalt (C, Pascal, etc.) prezintă facilităţi de inserare în codul sursă de nivel înalt a liniilor scrise direct în limbaj de asamblare sau link-editarea într-un singur modul a mai multor module obiect provenite de la compilarea unor coduri sursă, scrise în limbaje de programare diferite (C, asamblare). În cazul aplicaţiilor ample, modulele care necesită structuri de date complexe, tehnici de programare sau algoritmi complicaţi, sunt scrise în limbaje de nivel înalt, iar cele care sunt critice din punct de vedere al timpului de execuţie şi al resurselor utilizate sunt implementate în limbaj de asamblare specific procesorului pe care se execută aplicaţia. Un alt aspect care recomandă studiul limbajelor de asamblare îl reprezintă caracterul său formativ: o cunoaştere şi o mai bună înţelegere a modului de lucru al procesorului, a organizării memoriei, a lucrului cu stiva, a transferului de parametri la nivelul procedurilor, conduce în final la scrierea de programe mai eficiente în limbajele de nivel înalt.
Îndrumarul este structurat după cum urmează. Prima lucrare de laborator prezintă arhitectura microprocesorului 8086. Lucrările 2-5 prezintă instrucţiunile limbajului de asamblare 8086. Lucrarea 6 prezintă directivele limbajului 8086. Lucrarea 7 prezintă mecanismul de întreruperi la 8086. Lucrările 8 şi 9 prezintă tehnicile de lucru cu proceduri în limbaj de asamblare. Lucrarea 10 prezintă metode de implementare a aplicaţiilor mixte C-Asamblare.