
- •Дагестанкий государтвенный технический университет
- •Махачкала 1997 г.
- •Лабораторная работа №1
- •1.1.Создание выполнимого файла, работа в отладчике, изучение оператора пересылки mov.
- •1.2. Оператор mov.
- •1.3. Основные команды отладчика afd.
- •1.4. Индивидуальные задания.
- •2.1. Сегментация памяти, директивы ассемблера
- •2.2. Прямая адресация
- •2.3. Косвенная адресация
- •2.4. Директива assume
- •2.5. Индивидуальные задания
- •Лабораторная работа №3
- •3.1. Директивы equ, label, команды сложения и вычитания
- •3.1.1. Директивы equ
- •3.1.2. Директива label
- •3.2. Команды сложения и вычитания
- •3.3. Индивидуальные задания Вариант 1.
- •Вариант 2.
- •Вариант 3.
- •Вариант 4.
- •Вариант 5.
- •Вариант 6.
- •Вариант 7.
- •Вариант 8.
- •Вариант 9.
- •Вариант 10.
- •Вариант 11.
- •Вариант 12.
- •3.4. Примечание
- •Лабораторная работа №4
- •4.1. Изучение операторов обмена xchg и xlat
- •. Индивидуальные задания Вариант 1.
- •Вариант 2.
- •Вариант 3.
- •Вариант 4.
- •Вариант 5.
- •Вариант 6.
- •Вариант 7.
- •Вариант 8.
- •Вариант 9.
- •Вариант 10.
- •Вариант 11.
- •Вариант 12.
- •4.3. Приложение
- •Литература
- •Оглавление
- •Хачумов Вячbслав Михайлович Исмаилов Шейх-Магомед Абдулаевич Лагиева Марият Тагировна
3.3. Индивидуальные задания Вариант 1.
Зарезервировать в сегменте данных:
5 байт со значениями 88Н,234,122,АВ, FЕ, присвоить последовательности имя L1;
3 слова без инициализации с именем L2;
4 байта с именем L3 и значениями 11Н,55Н,44Н,ЕЕН. Обеспечить с помощью директивы LABLE доступ к этим байтам как к словам.
присвоить значению 250 имя L4.
Написать программу, в которой:
Получить сумму 1,3,5 байтов из последовательности с именем L1 и записать результат во 2 слово последовательности L2.
Полученный в п.1. результат сложить со значением L4, результат записать в 3 слово последовательности L2.
Содержимое 2 слова последовательности L2 вычесть из 3 слова этой последовательности, результат записать в первое слово.
Выполнить п.1., используя косвенную адресацию (см. примечание), результат записать по адресу L3.
Вариант 2.
Зарезервировать в сегменте данных:
3 слова со значениями b88h, 1234h, e22h, присвоить последовательности имя М1. Обеспечить с помощью директивы LABEL доступ к этим словам как к байтам.
Четыре байта без инициализации с именем М2;
Присвоить значению 211 имя М3.
Написать программу, в которой:
Получить сумму 3 значений (каждого второго байта последовательности М1) и записать результат во 2 слово последовательности М2.
Получить сумму 2 и 3 слов последовательности М1, из которой вычесть значение М3, записать результат в 1 слово последовательности М2.
Получить сумму 2 и 3 байтов последовательности М2 записать результат (байт) во 2 байт последовательности М1.
Выполнить п.1., используя косвенную адресацию (см. примечание).
Вариант 3.
Зарезервировать в сегменте данных:
Цепочку символов “канитель”, присвоить последовательности имя Q1. Обеспечить с помощью директивы LABLE доступ к этим байтам как к словам.
Четыре слова без инициализации с именем Q2.
Присвоить значению 184 имя Q3.
Написать программу, в которой:
Получить сумму 2,3 и 4 слов последовательности Q1 и записать результат в 3 слово последовательности Q2.
Полученный в п.1. результат сложить с 1 байтом последовательности Q1 и вычесть значение Q3, результат записать 2 слово последовательности Q2.
Получить сумму 2 и 3 слов последовательности Q2, старший байт результата записать в 1 байт последовательности Q1, младший байт в 1 слово последовательности Q2.
Выполнить п.1., используя косвенную адресацию (см. примечание).
Вариант 4.
Зарезервировать в сегменте данных:
Восемь байт со значениями 88Н, присвоить последовательности имя Т1. Обеспечить с помощью директивы LABEL доступ к этим байтам как к словам.
Четыре слова, значение 1 слова равно CF1H, остальные слова не инициализировать, имя последовательности Т2.
Присвоить значению 232 имя Т3.
Написать программу, в которой:
Записать во 2 слово последовательности Т2 первые слова последовательности Т1.
Получить сумму 3 значений: первых двух слов последовательности Т2 и второго байта последовательности Т1, результат записать 3 слово последовательности Т2.
Получить сумму 2 и 3 слов последовательности Т2 и из результата вычесть значение Т3, результат записать 2 слово последовательности Т1.
Выполнить п.2., используя косвенную адресацию (см. примечание).