Задания по лабораторной работе. 1. Сформировать исходный текст программы на языке Assembler, содержащий сегмент данных согласно заданной таблицы
1. Сформировать исходный текст программы на языке Assembler, содержащий сегмент данных согласно заданной таблицы
2. Сформировать объектный код программы с использованием транслятора TASM.exe стандартного пакета TASM
3. Сформировать исполнимый код программы с использованием компилятора TLINK.exe стандартного пакета TASM
4. Выполнить отладку prog2.exe с использованием отладчика TD.exe стандартного пакета TASM и выявить логические ошибки
5. В окне CPUTurboDebuggerа, под окне DUMP наблюдать расположение сегмента данных разработанной программы
6. Наблюдать в под окне Register динамику изменения содержания регистра по ходу выполнения программы
7. Выполнить сложение пункта 1 с пунктом 5 и пункта 6 с пунктом 11 таблицы
8. Разработать и оформить отчет по лабораторной работе согласно правилам
Таблица 1
№ п/п | Количество | Наличие инициализации | Имя | Тип данных |
+ | + | байт | ||
- | + | байт | ||
- | + | байт | ||
+ | - | Строка | ||
+ | + | байт | ||
+ | + | Слово | ||
- | + | Слово | ||
+ | + | Двойное слово | ||
+ | + | 6 байт | ||
+ | + | Адрес | ||
+ | + | Слово |
Алгоритм решения задачи
Рисунок 1 – Блок-схема программы
Блок 1:
Задаем сегмент данных: директивы резервирования и инициализации данных согласно
Таблице 1.
B1 db 2Bh
B2 db 5 dup()
B3 db 2 dup()
db “Hello Kitty"
B5 db 7Eh
B6 dw 314h
B7 dw 3 dup()
b8 dd 186h
b9 df 1994h
adr10 dw b6
b11 dw 777h
Блок2:
Пересылаем и складываем в младшем байте регистра ax значения b1 и b5. (Рисунок 2)
Блок 3:
Складываем в регистре ax значений b6 и b11. (Рисунок 3)
Блок 4:
В регистр ax записывается результат суммы s2. (Рисунок 4)
Код программы приведен в приложении А.
Контрольные примеры
Рисунок 1 - Пересылаем содержимое b1 в регистр al
Рисунок 2 –Прибавляем к значению регистра al значение b5
Рисунок 3 –Запись в регистр ax значения b6
Рисунок 4 –Добавление в регистр ax к значению b6 значение b11
Рисунок 1 –Изображение регистров
Рисунок 2 –Изменение регистра al
Рисунок 3 –Изменение регистра ax на b6
Рисунок 4 – Добавление в регистр ax к значению b6 значение b11
Выводы