Ľudmila Jánošíková

Programovanie v jazyku symbolických adries

pre 32-bitové procesory Intel
Obsah Index
Prostriedky pre prípravu programu

Prostriedky pre prípravu programu umožňujú:

  • vytvoriť zdrojový kód programu,
  • preložiť program,
  • vytvoriť spustiteľný program,
  • ladiť program.

Zdrojový kód programu môžete vytvoriť v ľubovoľnom textovom editore, ktorého výstupom je čistý text bez formátovacích znakov, napr. Notepad. Zdrojový program má príponu .asm.V ďalšej fáze spracovania programu (na preklad, spájanie a ladenie) budeme používať prostriedky firmy Borland, a to prekladač Turbo Assembler, spojovací program Turbo Linker a ladiaci program Turbo Debugger. Jednotlivé programy budeme spúšťať pomocou príkazov zadávaných z príkazového riadku. Pred volaním programov treba prejsť do pracovného adresára, v ktorom bude uložený zdrojový program, výsledný program (.exe), ako aj ostatné súbory vytvárané v priebehu prekladu.

Prekladač preloží zdrojový kód programu napísaný v JSA do strojového kódu. Príkaz na spustenie prekladača má tvar:

[cesta]tasm [voľby] zdrojový program [,preložený program][,výpisový súbor][,súbor s krížovými referenciami]

Položky v hranatých zátvorkách sú nepovinné.

Voľby ovplyvňujú činnosť prekladača. Ich úplný zoznam sa vypíše na obrazovku, ak zadáte príkazový riadok v tvare

tasm

Tu by som spomenula len dve užitočné voľby, a to
  • /z - s chybovou správou sa zobrazí aj zdrojový riadok
  • /zi - do preloženého súboru sa doplnia informácie pre ladenie
Meno preloženého programu nemusíte zadávať, iba ak by ste chceli, aby sa volal inak ako zdrojový program alebo bol uložený v inom adresári. Preložený program dostane príponu .obj. Výpisový súbor je protokol o preklade, ktorý obsahuje zoznam chýb s číslami riadkov, na ktorých sa vyskytli. Štandardne má príponu .lst. Súbor s krížovými referenciami obsahuje zoznam všetkých identifikátorov (konštánt, premenných a návestí) s číslami riadkov, na ktorých boli definované a použité. Má príponu .xrf. Výpisový súbor a súbor s krížovými referenciami sa vytvoria len vtedy, keď ich mená uvediete v príkazovom riadku.

V ďalšej fáze sa z preloženého programu musí vytvoriť spustiteľný súbor (.exe). Na to slúži spojovací program:

[cesta]tlink [voľby] preložený program [moduly][,výsledný program][,mapovací súbor][,knižnice]

Moduly sú súčasti výsledného programu, ktoré sa samostatne editujú a prekladajú, teda podobne ako preložený program majú príponu .obj. Meno výsledného programu opäť uvediete len vtedy, ak sa má volať inak ako preložený program alebo má byť uložený v inom adresári. Mapovací súbor (prípona .map) sa vytvorí vždy; je to krátky textový súbor, ktorý obsahuje informácie o umiestnení segmentov v pamäti. Knižničné súbory majú príponu .lib. Z celého radu volieb stačí, ak si zapamätáte voľbu
  • /v - do .exe súboru sa pridajú informácie pre ladenie
Na ladenie programu budeme používať program Turbo Debugger, ktorý sa vyvolá príkazom

[cesta]td program

Pomocou prostriedkov pre prípravu programu, ktoré sme práve popísali, skúste vytvoriť a spustiť nasledujúci program:

.MODEL small
.STACK 100h
.DATA
Sprava DB 'No nazdar!$'
.CODE
Zac:

mov ax,@data

mov ds,ax; ulož bázovú adresu dátového segmentu do ds

mov dx,offset Sprava; ulož do dx adresu reťazca

mov ah,9

int 21h; vypíš na obrazovku reťazec

mov ax,4C00h

int 21h
END Zac

Hore

Načo je vám jazyk symbolických adries?

Architektúra moderných procesorov

Registre

Spôsoby adresovania

Premenné a návestia

Symbolické konštanty

Inštrukčný súbor

Segmentové direktívy

Moduly

Služby operačného systému MS-DOS

Služby operačného systému Windows 95/98/NT/XP

Systémová úroveň vstupu a výstupu

Prostriedky pre prípravu programu

Systémová úroveň vstupu a výstupu
Vydala Žilinská univerzita v Žiline, 2000. ISBN 80-7100-723-4.
Otázky a pripomienky môžete poslať autorke.
Naposledy upravené 14.9.2007.