Direktivy assembleru DB, DW a DD: Porovnání verzí
Skočit na navigaci
Skočit na vyhledávání
(Žádný rozdíl)
|
Verze z 12. 10. 2012, 12:17
Integrovaný assembler podporuje tři direktivy assembleru: DB (definuje bajt), DW (definuje slovo) a DD (definuje dvojité slovo).
Dir | Typ operandu | Rozsah hodnot | Integrovaný assembler generuje |
---|---|---|---|
DB | Konstantní výraz | -128 až 255 | 1 bajt |
Znakový řetězec | Libovolná délka | Posloupnost bajtů, korespondujících s ASCII kódem každého znaku | |
DW | Konstantní výraz | -32768 až 65535 | 1 slovo (word) |
Adresní výraz | Blízký ukazatel (slovo ofsetu) | ||
DD | Konstantní výraz | -2147483648 až 4294967295 | 1 dvojité slovo (double word) |
Adresní výraz | Vzdálený ukazatel (slovo ofsetu následované slovem segmentu) |
Data generovaná direktivami DB, DW a DD jsou vždy uložena v programovém segmentu.
Ke generování neinicializovaných a inicializovaných dat v datovém segmentu Turbo Pascal normálně používá deklarace var nebo const.
Zde jsou některé příklady direktiv DB, DW a DD:
Dir | Operand | Výsledek |
---|---|---|
DB | 0FFH | Jeden bajt |
DB | 0,99 | Dva bajty |
DB | 'A' | Ord('A') |
DB | 'Hello...',0DH,0AH | Řetězec + CR/LF |
DB | 12,"Turbo Pascal" | Řetězec ve stylu Pascalu |
DW | 0FFFFH | Jedno slovo |
DW | 0,9999 | Dvě slova |
DW | 'A' | Stejně jako DB 'A',0 |
DD | 'DCBA' | Stejně jako DB 'A','B','C','D' |
DW | MyVar | Ofset MyVar |
DW | MyProc | Ofset MyProc |
DD | 0FFFFFFFFH | Jedno dvojité slovo |
DD | 0,999999999 | Dvě dvojitá slova |
DD | 'A' | Stejně jako DB 'A',0,0,0 |
DD | 'DCBA' | Stejně jako DB 'A','B','C','D' |
DD | MyVar | Ukazatel na MyVar |
DD | MyProc | Ukazatel na MyProc |
Jediný typ symbolu, který může být definován v příkazech integrovaného assembleru, je pouze návěští. Všechny proměnné musí být deklarovány pomocí deklarační syntaxe Pascalu.