Direktivy assembleru: Porovnání verzí
Skočit na navigaci
Skočit na vyhledávání
m (1 revízia: Assembler pismeno D) |
|||
(Není zobrazeno 5 mezilehlých verzí od stejného uživatele.) | |||
Řádek 1: | Řádek 1: | ||
+ | ;Direktivy assembleru DB, DW a DD | ||
Integrovaný assembler podporuje tři direktivy assembleru: [[DB]] (definuje bajt), [[DW]] (definuje slovo) a [[DD]] (definuje dvojité slovo). | Integrovaný assembler podporuje tři direktivy assembleru: [[DB]] (definuje bajt), [[DW]] (definuje slovo) a [[DD]] (definuje dvojité slovo). | ||
− | {| class="wikitable | + | {| class="wikitable" |
− | ! Dir!! Typ operandu !! Rozsah hodnot !! Integrovaný assembler generuje | + | ! Dir!! Typ operandu !! align="left"| Rozsah hodnot !! align="left"| Integrovaný assembler generuje |
|----------------------------------------------------------------------------- | |----------------------------------------------------------------------------- | ||
| DB || Konstantní výraz || -128 až 255 || 1 bajt | | DB || Konstantní výraz || -128 až 255 || 1 bajt |
Aktuální verze z 9. 11. 2012, 21:18
- Direktivy assembleru DB, DW a DD
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.