Osnovi programiranja i programski jezici
Osnovi programiranja i programski jezici
Osnovi programiranja i programski jezici
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
INTEL 8086 ASEMBLER<br />
Pitanje je, zašto učiti i koristiti asembler, kad više<strong>programski</strong> <strong>jezici</strong>, odnosno objektno<br />
orijentisani <strong>jezici</strong> programeru daju moćan razvojni sistem? Činjenica je, da ovi <strong>jezici</strong> ne<br />
mogu optimalno iskoristiti resurse hardvera. U manjim i jednostavnijim sistemima<br />
operativna memorija ima svega nekoliko kilobajtni kapacitet, a memorija za podatke često<br />
nekoliko desetina bajtova. Kad se radi o sistemima, gde su odgovori u realnom vremenu,<br />
odnosno kad se radi o sistemima na primer za upravljanje, regulaciju, merenje itd., onda<br />
vreme reakcije mikroračunarskog sistema je kritično. Kod ozbiljnijih sistema, na primer<br />
kod PC računara isto može da se pojavi zahtev za brze odgovore, na primer kod programa<br />
za igre. Sledeći zadatak pokazuje neke dobre osobine asemblera.<br />
Zadatak: Na IBM PC računaru treba ispisati na monitor brojeve od 0 do 65535. Za<br />
realizaciju zadatka korišćeni su <strong>jezici</strong>:<br />
• asembler I8086,<br />
• Pascal (Borland Pascal 6.0) i<br />
• Borland Turbo C 2.0.<br />
Dužine tih programa, odnosno potrebno vreme rada tih programa se nalaze u tabeli br. 11.<br />
Ovi rezultati su zavisni i od konkretne konfiguracije računara, verzije prevodilaca,<br />
operativnog sistema, video kartice. itd., ali tendencije su očigledne.<br />
Tabela 11.: Upoređivanje <strong>programski</strong>h jezika<br />
Programski jezik dužina programa [bajt] vreme rada [sec]<br />
Borland Turbo C 2.0 8994 2.4<br />
Borland Pascal 6.0 3888 0.5<br />
Asembler 80 0.15<br />
Iz ove analize sledi, da sa asemblerom možemo postići kraće vreme odgovora u odnosu na<br />
bilo koji viši<strong>programski</strong> jezik, a i program je kraći. Međutim, onu problematiku, gde<br />
veoma efikasno koristimo mogućnosti višiprogramskog jezika i realizujemo pomoću tih<br />
<strong>programski</strong>h jezika. Rad sa matricama veoma je jednostavan u Pascalu, za rad sa bazama<br />
podataka razvijeni su dBase <strong>programski</strong> <strong>jezici</strong>, za veštačku inteligenciju Prolog itd.. LINK<br />
program će napraviti jedinstveni izvršni kod od objektnog koda asemblera, Pascala,<br />
Prologa itd.<br />
PROCESORI INTEL I80286, I80386, I80486, PENTIUM, PENTIUM II I PENTIUM III<br />
Novije tehnologije uvek daju mogućnost za povećanje takt frekvencije, a istovremeno i za<br />
kompleksnije hardversko rešenje, na primer za veću dužinu reči procesora. Firma Intel<br />
kod razvoja sledeće generacije procesora ima filozofiju, da prethodne rezultate ne treba<br />
odbaciti, nego treba integrisati u novija rešenja, ovo postižu tako, što su nove generacije<br />
mikroprocesora kompatibilni sa prethodnim procesorima.<br />
Za početak dovoljno je naučiti asembler i8086, a ako neko želi da iskoristi mogućnosti<br />
Pentiuma, samo treba da dodaje instrukcije ovog procesora.<br />
75