Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Практическая часть. 1. Напишите машинные команды для:



1. Напишите машинные команды для:

а) пересылки значения 4629Н в регистр AX;

б) сложения 036АН с содержимым регистра AX.

2. Предположим, что была введена следующая Е-команда

Е CS:100 В8 45 01 05 25 00

Вместо шестнадцатеричного значения 45 предполагалось 54. Напишите команду Е для корректировки только одного неправильно введенного байта, т.е. непосредственно замените 45 на 54.

3. Предположим, что введена следующая команда:

E CS:100 B8 04 30 05 00 30 CB

Ответьте на вопросы:

а) Что представляют собой эти команды?

б) После выполнения этой программы в регистре AX должно быть значение 0460, но в действительности оказалось 6004. В чем ошибка и как ее исправить?

в) После исправления команд необходимо снова выполнить программу с первой команды. Какие две команды отладчика потребуются?

4. Имеется следующая программа в машинных кодах:

В0 25 D0 E0 B3 15 F6 E3 CB

Программа выполняет следующее:

• пересылает значение 25H в регистр AL;

• сдвигает содержимое регистра AL на один бит влево (в результате в AL будет 4А);

• пересылает значение 15H в регистр BL;

• умножает содержимое регистра AL на содержимое регистра BL.

Используйте отладчик для ввода (Е) этой программы по адресу CS:100. Не забывайте, что все значения представлены в шестнадцатеричном виде. После ввода программы наберите D CS:100 для просмотра сегмента кода. Затем введите команду R и необходимое число команд Т для пошагового выполнения программы до команды RET. Какое значение будет в регистре АХ в результате выполнения программы?

5. Используйте отладчик для ввода (Е) следующей программы в машинных кодах:

Данные: 25 15 00 00

Код: А0 00 00 D0 E0 F6 26 01 00 A3 02 00 CB

Программа выполняет следующее:

• пересылает содержимое одного байта по адресу DS:00 (25) в регистр AL;

• сдвигает содержимое регистра AL влево на один бит (получая в результате 4А);

• умножает AL на содержимое одного байта по адресу DS:01 (15);

• пересылает результат из АХ в слово, начинающееся по адресу DS:02.

После ввода программы используйте команды D для просмотра сегмента данных и сегмента кода. Затем введите команду R и необходимое число команд Т для достижения конца программы (RET). В этот момент регистр АХ должен содержать результат 0612. Еще раз используйте команду D DS:00 и обратите внимание на то, что по адресу DS:02 значение записано как 1206.

Постройте команды для записи программы на диск под именем PR.СОМ.

6. Используя команду А отладчика, введите следующую программу:

MOV ВХ,25

ADD ВХ,30

SHL ВХ,1

SUB ВХ,22

NОР

RET

Сделайте ассемблирование и трассировку выполнения этой программы до команды NOP.





Дата публикования: 2014-12-11; Прочитано: 642 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...