Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Порядок виконання роботи. 1. Створити текстовий файл, який має розширення .ASM та містить таку програму:




1. Створити текстовий файл, який має розширення.ASM та містить таку програму:

 

data segment

monin db “02”; номер місяця

alfmon db “???”, “$”

montab db “JAN”, “FEB”, “MAR”, “APR”, “MAY”, “JUN”, “JUL”, “AUG”, “SEP”, “OCT”, “NOV”, “DEC”; таблиця імен місяців

tr db 3; змінна, що дорівнює 3

data ends

 

code segment

start: assume cs: code, ds: data, es: data

mov ax, data; ініціалізація сегментів

mov ds, ax

mov es, ax

mov ah, monin; код першої цифри номера місяця

mov al, monin + 1; код другої цифри номера місяця

xor ax, 3030h; перетворення кодів номерів місяцев у номери

cmp ah, 0; перша цифра номера дорівнює нулю?

jz c20; перехід, якщо номер однозначний

sub ah, ah; обнулити ah

add al, 10; додати до номера 10

c20: lea si, montab; встановити пойнтер si на початок таблиці

dec al; зменшити номер місяця на 1

mul tr; умножити на 3

add si, ax; сформувати в si адрес потрібного місяця

mov cx, 3; у сх - кількість повторень

cld; обробляти рядки по автоінкременту

lea di, alfmon; встановити індекс di на змінну alfmon

rep movsb; переписати рядок з таблиці до alfmon

mov dx, offset alfmon; в dx – адреса змінної alfmon

mov ah, 9; 9-та функція переривання ДОС № 33

int 21h; вивід рядка на екран

code ends

end start

 

 

2. Сформувати об’єктний модуль та файл лістінгу за допомогою програми TASM.

3. Перетворити об’єктний файл у виконуваний за допомогою програми TLINK.

4. Запустити програму на виконання. Пересвідчитись, що програма виводить на екран монітора назву місяця.

5. Завантажити програму до відладчика двоїчного кода TD та крок за кроком виконати усі її команди. Після виконання кожної з команд проаналізувати стан кожного з регістрів процесора.

6. Зробити зміни в програмі таким чином, щоб виводилися не три букви назви місяця, а чотири або більше.

 

3. Зміст звіту

 

1. Текст файла лістінга (.LST), до якого додан стан усіх регістрів процесора на кожному кроці виконання програми.

2. Висновки по роботі.

 

 

4. Контрольні запитання

 

 

1. Визначіть таблицю, що містить імена студентів вашої групи.

2. Які обмеження існують на розмір таблиці в програмі до лабораторної роботи?

3. Яку найбільшу довжину може мати кожен елемент цієї таблиці?

4. Для чого визначено змінну tr, що дорівнює 3? Чи не можна було збутися її використання?

5. Яких змін потребує програма при збільшенні довжини слова до 9 символів? При збільшенні кількості місяців до 16?

6. Який сенс у використанні змінної alfmon?

7. Назвіть декілька способів для обнуління регістрів.

 

 






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных