ДИРЕКТИВЫ РЕЗЕРВИРОВАНИЯ И ИНИЦИАЛИЗАЦИИ ДАННЫХ

Для описания простых типов данных используются специальные директивы резервирования и инициализации данных, которые являются указаниями транслятору на выделение определенного объема оперативной памяти.

В таблице 4 представлены поддерживаемые TASM директивы резервирования и инициализации данных.

 

Таблица 5 – Директивы инициализации и резервирования данных

 

Длина, байт Директива инициализации Описание
DB(Define Byte) определить байт
DW(Define Word) определить слово
DD(Define Double word) определить двойное слово
DF(Define Far word) определить дальнее слово
DP(Define Pointer) определить указатель
DQ(Define Quarted word) определить учетверенное слово
DT(Define Ten bytes) определить десять байт

 

В общем случае все директивы объявления данных имеют такой синтаксис:

[имя] директива выражение

Синтаксис параметра выражение может быть следующим:

· ? – неинициализированные данные;

Пример:

N dw ?

Per1 db ?

· значение инициализации – значение элемента данных, которое будет занесено в память после загрузки программы;

Пример:

z dd 0

x1 db ‘Hello’

a dw 0,1,2,3,4,5,6,7,8,9

· количество_повторов DUP (dup_выражение [,dup_выражение ]) – позволяет повторить занесение в физическую память выражения в скобках столько раз, сколько повторений указано (объвление и инициализация массивов);

Пример:

arr dt 10 dup (?)

mas db 250 dup (‘ ’)

· некоторое символическое имя метки или ячейки памяти в сегменте данных.

Пример:

y dd a

b dw mas

Для описания двоично-десятичных чисел в программе используются только две директивы – db и dt. Например:

per1 db 2,3,4,6,8,2 ; неупакованное BCD число 286432

per2 dt 9875645 ; упакованное BCD число 987545