Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Assembler 01.doc
Скачиваний:
19
Добавлен:
09.11.2019
Размер:
727.04 Кб
Скачать

2. Определение данных с числом повторений.

2.1. Выполнить раздел 1 данной лабораторной работы (пп.1.1.-1.7.), изменив с помощью текстового редактора NORTON следующие константы:

FLD1DB DB 11,12,13,14,15,16 ;Определение нескольких констант

FLD2DB DW 10 DUP(?) ;Десять неопределенных слов

FLD3DB DB 5 DUP(14) ;Пять байт, содержащих 0ЕН

FLD4DB DB 3 DUP(4 DUP(8)) ;Двенадцать восьмерок

Если выражение содержит несколько констант, разделенных запятыми и ограниченных только длиной строки, ассемблер определяет эти константы в виде последовательности смежных байтов.

Если необходимо повторение константы применяется следующий формат:

[имя] Dn число-повторений DUP (выражение)

3. Директива определения байта (dв).

3.1. Директива DВ определяет элементы, которые имеют длину в один байт. Символьное выражение в DВ может содержать строку символов любой длины.

Числовое выражение в DВ может содержать одну или более однобайтовую константу. Байт представляется двумя шестнадцатиричными цифрами. Наибольшее положительное шестнадцатиричное число - это 7FH; все большие числа от 80Н до FFH представляют отрицательные значения. В десятичном исчислении эти пределы выражаются числами +127 и -128.

3.2. Выполнить раздел 1 данной лабораторной работы (пп.1.1.-1.7.), изменив с помощью текстового редактора NORTON некоторые константы и введя новые:

FLD1DB DB ? ;Не инициализировано

FLD2DB DB 32 ;Десятичная константа

FLD3DB DB 20H ;Шест. константа

FLD4DB DB 01011001B ;Двоичная константа

FLD5DB DB 01,'JAN',02,'FEB',03,'MAR';Таблица

FLD6DB DB '32654' ;Символьное число

FLD7DB DB 10 DUP(0) ;Десять нулей

4. Директива определения слова (dw).

4.1. Директива DW определяет элементы, которые имеют длину в одно слово (два байта). Символьное выражение в DW ограничено двумя символами, которые ассемблер представляет в объектном коде так, что, например, 'PC' становится 'CP'.

Числовое выражение в DW может содержать одну или более двухбайтовую константу. Два байта представляются четырьмя шестнадцатиричными цифрами. Наибольшее положительное шестнадцатиричное число в двух байтах - это 7FFFH; все большие числа от 8000Н до FFFFH представляют отрицательные значения. В десятичном исчислении эти пределы выражаются числами +32767 и -32768.

4.2. Выполнить раздел 1 данной лабораторной работы (пп.1.1.-1.7.), изменив с помощью текстового редактора NORTON следующие константы:

FLD1DB DW 0FFF0H ;Шест. константа

FLD2DB DW 01011001B ;Двоичная константа

FLD3DB DW FLDC ;Адресная константа

FLD4DB DW 3,4,7,8,9 ;Пять констант

FLD5DB DW 5 DUP(0) ;Пять нулей

Поле FLD3DB определяет адрес - в данном случае смещение на адрес FLDC. В результате генерируется объектный код 0004 (R означает перемещаемость этого адреса в памяти).

5. Директива определения двойного слова (dd).

5.1. Директива DD определяет элементы, которые имеют длину в два слова (четыре байта). Числовое выражение может содержать одну константу или более, каждая из которых имеет максимально четыре байта (восемь шестнадцатиричных цифр). Наибольшее положительное шестнадцатиричное число в четырех байтах - это 7FFFFFFFН; все большие числа от 80000000Н до FFFFFFFFH представляют отрицательные значения. В десятичном исчислении эти пределы выражаются чис-

лами +2147483647 и -2147483648.

5.2. Выполнить раздел 1 данной лабораторной работы (пп.1.1.-1.7.), изменив с помощью текстового редактора NORTON следующие константы:

FLD1DB DD ? ;Не инициализировано

FLD2DB DD 'PC' ;Символьная строка

FLD3DB DD 32572 ;Десятичное значение

FLD4DB DD FLD3DB-FLDC ;Разность адресов

FLD5DB DD 14,19 ;Две константы

В поле FLD4DB генерируется разница между двумя адресами, адресом FLD3DB и адресом FLDC - 000ЕН(14)-0004Н(4)=000АН(10).

Символьное выражение директивы DD ограничено двумя символами. Ассемблер преобразует символы в машинные коды и выравнивает их слева в четырехбайтовом двойном слове, как показано в поле FLD2DB в объектном коде.

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