Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Отчет по лабораторной работе № 11Тема: «Программирование цикла с переадресацией»
Цель работы: _________________________________________________________________________ ______________________________________________________________________________________
Ход работы: Пример циклической программы (таблица 1). Суммирование элементов массива, длина которого, записывается в регистр CX, смещение первого элемента в DI. Элементы массива представлены 16-ти разрядными числами. Таблица 1.
1. Вызвать программу AFD. Записать в регистр Di 0030. 2. По адресам со смещением [0030-0039] записать числа в соответствии с вариантом (таблица 2).
3. Ввести фрагмент программы таблицы 1, учитывая, что в командах переходов вместо меток должны быть машинные адреса команд, на которые осуществляется переход. В процессе ввода заполнить 2 колонку таблицы 1. 4. После ввода фрагмента программы выйти из режима ассемблирования, нажав Ctrl + Enter. 5. Набрать D 100 (ввод). 6. Выполнить программу в пошаговом режиме с помощью клавиши F1, на каждом шаге фиксирую результат в таблице 3, учитывая, что старшие разряды числа находятся в регистре BX, а младшие в AX. Таблица 3.
7. Ввести фрагмент программы индивидуального задания, выполнить его в пошаговом режиме, нажимая F1, записать результат.
Вариант индивидуального задания № __ Условие задачи: __________________________________________________________________ ____________________________________________________________________________________________________________________________________________________________________________ __________________________________________________________________________________
Решение и результат: ______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________ Выводы: ____ ____________________________________________________________________ ____________________________________________________________________________________________________________________________________________________________________________
Ответы на контрольные вопросы: 1. Какие команды применяются для организации циклов? _______________________________ ______________________________________________________________________________________
2. Какой регистр используется в качестве счетчика в цепочечных командах? ________________
3. Каким образом выполняется команда LOOP (повторить цикл)? ______________________________________________________________________________________ ______________________________________________________________________________________
группа ПЗ- __ ФИО _________________ дата выполнения работы __________ дата сдачи ________
Отчет по лабораторной работе № 12. Тема: «Подпрограммы и стек»
Цель работы: _________________________________________________________________________ ______________________________________________________________________________________
Ход работы: 1. Запустить AFD.exe. Набрать А 100. Ввести программу записи содержимого регистров в стек: PUSH AX PUSH [10] PUSH [SI] INT3 2. Для выхода из ассемблирования нажать Ctrl+Enter. Записать в регистры данные (таблица 1). Таблица 1.
3. Набрать D 100, выполнить программу в пошаговом режиме (F2). Убедиться, что после выполнения каждой команды содержимое SP уменьшается на 2, т.к. стек работает со словами и меньший байт записывается по меньшему адресу. Содержимое регистров при этом не изменяется. Заполнить таблицу 1. 4. Очистить содержимое регистров (записать 0). Ввести программу, которая выталкивает содержимое регистров. Учитывая принцип работы стека, вводимая программа будет иметь вид: РОР DX РОР CX РОР BX РОР AX INT3 Выполнить программу в пошаговом режиме, заполнить таблицу 2. Таблица 2.
5. Исследовать выполнение команды PUSHA, которая записывает содержимое всех регистров МП в стек (таблица 3). Набрать А 100 и программу: PUSHA INT3 Записать в регистры значения из таблицы 3. Набрать D 100, выполнить программу в пошаговом режиме (F2). Таблица 3.
6. Исследовать выполнение команды РОРА, которая выталкивает из содержимое всех регистров. Очистить регистры, набрать А 100 и программу: РОРА INT3 Таблица 4.
7. Набрать D 100, выполнить программу в пошаговом режиме (F2), заполнить таблицу 4. 8. Исследовать выполнение команды PUSHF, которая размещает в вершине стека содержимое регистра флагов. Набрать А 100 и программу: PUSHF INT3 9. Набрать D 100, выполнить программу. Записать содержимое 2-х ячеек вершины стека _________ и сравнить результат со значениями флажков, формат регистра флажков имеет следующий вид:
10. Пример использования стека. Дан массив (см. таблицу), состоящий из 10 байт, записанных с адреса со смещением 0010. Используя стек можно переписать элементы массива в обратном порядке (вместо имен меток писать адреса перехода в командах loop). Выполнение программы клавиша F1.
MOV SI,0010 MOV CX,0A M: PUSH [SI]
LOOP M MOV SI,0010 MOV CX,0A M1: POP [SI] INC SI LOOP M1 INT3
Решение и результат: Выводы: ____ ______________________________________________________________________ ________________________________________________________________________________________ Ответы на контрольные вопросы: 1. Как производится запись числа в стек? 2. Как выполняется чтение числа из стека? 3. Какие функции выполняет стек? 4. Какая команда используется для записи числа в стек? 5. Какая команда используется для записи содержимого всех регистров МП в стек? группа ПЗ- __ ФИО _________________ дата выполнения работы __________ дата сдачи ________ Отчет по лабораторной работе № 13. Тема: «Командный цикл процессора»
Цель работы: ____________________________________________________________________ ____________________________________________________________________________________________________________________________________________________________________________ ______________________________________________________________________________________ Ход работы: 1. Вызвать программу отладчик AFD.ехе. 2. На запрос: "Press any key to continue" нажать любую клавишу. 3. Переместить курсор в поле 1 (регистры), используя клавишу F7. В регистр ВХ записать число 0140, в регистр SI записать число 0140, в регистр DI записать число 0160. 4. Вернуть курсор в поле 4 (область ячеек памяти), нажав клавишу F8 дважды. По адресам 0140-0148 набрать шестнадцатеричные числа 01, 02…09, по адресам 0160-0168 набрать числа А1, А2, …А9. 5. Перейти в поле 2 (CMD командная строка), нажав клавишу F7. Ввести команду: D 100 (ввод) (дамп памяти с адреса 100). 6. Ввести команду ассемблирования: А (ввод) 7. В поле 3 ввести фрагмент программы в соответствии с таблицей 1 (графы 4, 5). В процессе ввода заполнить графу 3 таблицы 1. Таблица 1.
8. После ввода фрагмента программы выйти из режима ассемблирования, нажав Ctrl + Enter. 9. Набрать D 100 (ввод). 10. Выполнить фрагмент программы в пошаговом режиме, многократно нажимая клавишу F2, ввод, и фиксируя на каждом этапе состояние регистров: АХ, СХ, SI, DI, флажков. Результаты занести в таблицу 2. Таблица 2.
После выполнения программы (появится сообщение Stop by BRx) записать содержимое ячеек памяти с относительными адресами 0140-0148 и 0160-0168 в таблицу 3. Таблица 3.
Выводы: _________________________________________________________________________ ________________________________________________________________________________________________________________________________________________________________________________ Ответы на контрольные вопросы: 1. Какие элементы входят в состав программной модели МП? ____________________________________________________________________________________________________________________________________________________________________________________________
2. Структура и назначение регистров АХ, ВХ, СХ, DX. ________________________________________________________________________________________________________________________________________________________________________________________________
3. Структура и назначение регистра флажков. ________________________________________________________________________________________________________________________________________________________________________________________________
4. Перечислите сегментные регистры и укажите их назначение. ________________________________________________________________________________________________________________________________________________________________________________________________
5. Укажите назначение регистров SP, BP, SI, DI. ________________________________________________________________________________________________________________________________________________________________________________________________
6. Назначение программы-отладчика AFD. ____________________________________________________ ______________________________________________________________________________________________
7. Основные команды программы-отладчика AFD. ____________________________________________________________________________________________________________________________________________________________________________________________
группа ПЗ- __ ФИО _________________ дата выполнения работы __________ дата сдачи ________
|