Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1-Базовые системы счисления.docx
Скачиваний:
5
Добавлен:
25.11.2019
Размер:
28.43 Кб
Скачать

Типы данных

BYTE. Этот тип данных занимает 1 байт (8 битов). При помощи этого типа можно зашифровать целое число со знаком или без знака в диапазоне от –128 до 255 или любой ASCII-символ. Директива определения – DB (Define Byte)

WORD. Этот тип данных занимает 2 байта (16 битов). В переменную данного типа можно поместить целое число в диапазоне от –32767 до 65535, два ASCII-символа или адрес памяти типа near. При этом запись в память производится следующим образом: младшая часть числа располагается по младшему адресу, а старшая – по старшему. Например, если целое шестнадцатеричное число 1234h расположено по адресу 1000h, то младшая часть 34h будет расположена по адресу 1000h, а 12h – по адресу 1001h. Директива определения – DW (Define word)

DWORD – 4 байта (2 слова) может вместить целое 32-битное число со знаком или без знака, число с плавающей точкой, 32-разрядный адрес памяти или 4 ASCII- символа. Все данные хранятся в перевернутом виде: младшие байты – по младшим адресам, старшие – по старшим. При хранении адреса адрес сегмента располагается в двух старших байтах, а смещение – в двух младших байтах памяти. Директива определения – DD (Define Double word)

QWORD – 8 байтов. Используется начиная с 32-процессорных машин. Может быть целым знаковым или беззнаковым числом или числом с плавающей точкой двойной точности. Директива определения – DQ (Define Quad)

Ten-Bytes – 10 байтов. Используется для хранения данных в основной памяти или в сопроцессоре. Может быть упакованным двоично-десятичным числом, расширенным целым числом или расширенным числом с плавающей точкой. Директива определения – DT (Define Ten bytes).

Общий синтаксис определения данных:

<name> <type> <value>

или

< name> < type> <number> dup (expression)

где name – имя переменной

type – одна из рассмотренных выше директив выделения памяти

value – список значений, который может содержать символьные или числовые константы; символ ?, если значение неопределено; адрес, если это имя переменной (используется в директивах DW и DD); строка ASCII-символов, символы заключаются в кавычки.

Оператор DUP означает повторение значений, указанных в скобках, заданное число раз.

Например,

var_a db 2 dup (0, 3 dup (1) ) ;эквивалентно var_a db 0, 1, 1, 1, 0, 1, 1, 1

var_b db 1, 2, 3, ?, ?

adr_n dw var_a

adr_f dd vax_d

Определим размер памяти, выделенный под каждую из следующих переменных:

m1 db 4,5,1,6 ; 4*1=4 байта

m2 db “xzyqw” ; 5*1=5 байтов

m3 dw 12 dup(?) ; 12*2=24 байта

m4 dd 345h, 234h ; 2*4=8 байтов

Общее количество байтов, выделенных данными директивами, равно 41 байт. Переменная m1 располагается по адресу 0h, m2 – 4h, m3 – 9h, а m4 – 21h. Адреса записываются в шестнадцатеричной системе счисления.

Индивидуальные задания:

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]