Отчет по лабораторной работе № 14.
Тема: «Принципы работы кэш-памяти. Алгоритмы замещения строк каш-памяти»
Цель работы: _________________________________________________________________________
______________________________________________________________________________________
Ход работы:
1. Запустить отладчик AFD. Набрать в командной строке А 100.
2. Ввести программу для установления в нужных разрядах единицы.
Машинный код |
Команда |
_____________ _____________ _____________ _____________ _____________ _____________ |
OR AX, 4365 OR BX, 4B89 OR CX, 445A OR DX, 6908 OR [10], C3 OR [20], 96 INT3 |
3. Для выхода из ассемблирования нажать Ctrl+Enter. Записать в регистры и ячейки памяти данные (таблица 1).
Таблица 1.
До выполнения |
Установить «1» в разрядах |
Маска |
После выполнения программы |
|||||||||||||||||
Регистр /ячейка |
значение |
значение/ разряды |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
||
АХ |
3412 |
14, 9, 8, 6, 5, 2, 0 |
4365 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
BX |
A456 |
14, 11, 9, 8, 7, 3, 0 |
4В89 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CX |
B2A5 |
14, 10, 6, 4, 3, 1 |
445А |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DX |
94F5 |
14, 13, 11, 8, 3 |
6908 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0010 |
34 |
7, 6, 1, 0 |
С3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0020 |
28 |
7, 4, 2, 1 |
96 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4. Набрать D 100, выполнить программу в пошаговом режиме (F2). Заполнить таблицу 1 и, записав результаты в двоичной системе, убедится, что в данных разрядах установлены единицы.
5. Ввести программу для установления в нужных разрядах нули:
Машинный код |
Команда |
_____________ _____________ _____________ _____________ _____________ _____________ |
AND AX, CBEF AND BX, 7BB8 AND CX, 5DDB AND DX, 7B5A AND [10], CB AND [20], D7 INT3 |
6. Выполнить программу в пошаговом режиме, предварительно в регистры и ячейки памяти записать информацию. Заполнить таблицу 2 и, записав результаты в двоичной системе, убедится, что в данных разрядах установлены нули.
Таблица 2.
До выполнения |
Установить «0» в разрядах |
Маска |
После выполнения программы |
||||||||||||||||||
Регистр /ячейка |
значение |
значение/ разряды |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|||
АХ |
3412 |
13, 12, 10, 4 |
CBEF |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
BX |
A456 |
15, 10, 6, 2, 1, 0 |
7BB8 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CX |
B2A5 |
15, 13, 9, 5, 2 |
5DDB |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DX |
94F5 |
15, 10, 7, 5, 2, 0 |
7B5A |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0010 |
34 |
5, 4, 2 |
CB |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0020 |
28 |
5, 3 |
D7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7. Исследовать выполнение программы, которая инвертирует в необходимых разрядах содержимого всех регистров и ячеек памяти. Набрать А 100 и программу:
Машинный код |
Команда |
_____________ _____________ _____________ _____________ _____________ _____________ |
XOR AX, A668 XOR BX, 62B8 XOR CX, B390 XOR DX, 6968 XOR [10], C3 XOR [20], 96 INT3 |
8. Записать в регистры и ячейки памяти значения из таблицы 3. Выполнить программу в пошаговом режиме F2. Записав результаты в двоичной системе, убедиться, что в нужных разрядах, инвертированы цифры.
Таблица 3.
До выполнения |
Инвертировать в разрядах |
Маска |
После выполнения программы |
||||||||||||||||||
Регистр /ячейка |
значение |
значение/ разряды |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|||
АХ |
3412 |
15, 13, 10, 9, 6, 5, 3 |
A668 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
BX |
A456 |
14, 13, 9, 7, 5, 4, 3 |
62B8 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CX |
B2A5 |
15, 13, 12, 9, 8, 7, 4 |
B390 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DX |
94F5 |
14, 13, 11, 8, 6, 5, 3 |
6968 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0010 |
34 |
7, 6, 1, 0 |
C3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0020 |
28 |
7, 4, 2, 1 |
96 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9. Исследовать выполнение программы, которая инвертирует содержимого всех регистров и ячеек памяти. Набрать А 100 и программу:
Машинный код |
Команда |
_____________ _____________ _____________ _____________ _____________ _____________ |
NOT AX NOT BX NOT CX NOT DX NOT [10] NOT [20] INT3 |
10. Записать в регистры и ячейки памяти значения из таблицы 4. Выполнить программу в пошаговом режиме F2. Записав результаты в двоичной системе, убедиться, что в разрядах инвертированы цифры.
Таблица 4.
До выполнения |
После выполнения программы |
|||||||||||||||||||||||||||||||||
Регистр /ячейка |
значение/ разряды |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
значение/ разряды |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
АХ |
3412 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
BX |
A456 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CX |
B2A5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DX |
94F5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0010 |
34 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0020 |
28 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11. Составить программу, выполнить и записать результат программы.
Вариант индивидуального задания № __
Условие задачи: __________________________________________________________________
____________________________________________________________________________________________________________________________________________________________________________
______________________________________________________________________________________
Решение:
________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
Результат: _______________________________________________________________________
Выводы: ________________________________________________________________________
группа ПЗ- __ ФИО _________________ дата выполнения работы __________ дата сдачи ________
Отчет по лабораторной работе № 15.
Тема: «Программирование внешних устройств»
Цель работы: ____________________________________________________________________
____________________________________________________________________________________________________________________________________________________________________________
Вариант №1
Ход работы:
1. Вызвать программу AFD. На запрос “Press any key to continue” нажать любую клавишу.
2. Изучить выполнение команды MOV dst, src с косвенной адресацией, имеющей форматы MOV mem/reg1, MOV mem/reg2; MOV mem/reg, data:
MOV AX, [DI]
MOV [SI], BL
INT3
Перейти в поле 2, нажав клавишу F7. Ввести команды D 100, A и выше указанную программу. Выйти из режима ассемблирования, нажав одновременно две клавиши ctrl+enter. В соответствующих регистрах и ячейках памяти записать указанные числа. Выполнить программу в пошаговом режиме, многократно нажимая клавишу F2. Результаты занести в таблицу 1.
Таблица 1.
Регистр, ячейка памяти |
До выполнения команды |
После выполнения команды |
Комментарии |
АХ |
4530 |
|
|
DI |
0010 |
|
|
[10] |
4F03 |
|
|
BL |
45 |
|
|
SI |
0020 |
|
|
[20] |
3F |
|
|
4. Изучить выполнение команды MOV dst, src с базовой адресацией, имеющей форматы MOV mem/reg1, mem/reg2; MOV mem/reg, data:
MOV AX, [BP+10]
MOV [BX], DL
INT3
Перейти в поле 2, нажав клавишу F7. Ввести команды D 100, A и выше указанную программу. Выйти из режима ассемблирования, нажав одновременно две клавиши ctrl+enter. В соответствующих регистрах и ячейках памяти записать указанные числа. Выполнить программу в пошаговом режиме, многократно нажимая клавишу F2. Результаты занести в таблицу 2.
Таблица 2.
Регистр, ячейка памяти |
До выполнения команды |
После выполнения команды |
Комментарии |
АХ |
4523 |
|
|
BP |
0010 |
|
|
[20][21] |
12FA |
|
|
DL |
47 |
|
|
BX |
0030 |
|
|
[30] |
34 |
|
|
[10][11] |
67FD |
|
|
5. Изучить выполнение команды MOV dst, src с индексной адресацией, имеющей форматы MOV mem/reg1, mem/reg2; MOV mem/reg, data:
MOV [SI+5], AX
MOV DX, [DI+10]
MOV [SI], 34
INT3
Перейти в поле 2, нажав клавишу F7. Ввести команды D 100, A и выше указанную программу. Выйти из режима ассемблирования, нажав одновременно две клавиши ctrl+enter. В соответствующих регистрах и ячейках памяти записать указанные числа. Выполнить программу в пошаговом режиме, многократно нажимая клавишу F2. Результаты занести в таблицу 3.
Таблица 3.
Регистр, ячейка памяти |
До выполнения команды |
После выполнения команды |
Комментарии |
АХ |
12FE |
|
|
SI |
0010 |
|
|
[15][16] |
4367 |
|
|
DX |
AF45 |
|
|
DI |
0030 |
|
|
[40][41] |
DA34 |
|
|
[10][11] |
67FD |
|
|
6. Изучить выполнение команды MOV dst, src с базовой индексной адресацией, имеющей форматы MOV mem/reg1, mem/reg2; MOV mem/reg, data:
MOV AX, [BP+SI]
MOV [BX+DI], CX
MOV [BX+SI+4], 34
INT3
Перейти в поле 2, нажав клавишу F7. Ввести команды D 100, A и выше указанную программу. Выйти из режима ассемблирования, нажав одновременно две клавиши ctrl+enter. В соответствующих регистрах и ячейках памяти записать указанные числа. Выполнить программу в пошаговом режиме, многократно нажимая клавишу F2. Результаты занести в таблицу 4.
Таблица 4.
Регистр, ячейка памяти |
До выполнения команды |
После выполнения команды |
Комментарии |
АХ |
4894 |
|
|
SI |
0010 |
|
|
BP |
0020 |
|
|
[30][31] |
9876 |
|
|
BX |
0005 |
|
|
DI |
0030 |
|
|
[35][36] |
34EF |
|
|
CX |
53FB |
|
|
[19] |
7F |
|
|
Выводы: _________________________________________________________________________ ____________________________________________________________________________________________________________________________________________________________________________
Ответы на контрольные вопросы:
Назначение команды СMP, ее формат _____________________________________________
______________________________________________________________________________________
Отличие команды MOV от команды LEA __________________________________________
______________________________________________________________________________________
Назвать команды умножения и их формат _______________________________________
______________________________________________________________________________________
Назвать команды деления и их формат______________________________________________
______________________________________________________________________________________
группа ПЗ- __ ФИО _________________ дата выполнения работы __________ дата сдачи ________
Отчет по лабораторной работе № 15.
Тема: «Программирование внешних устройств»
Цель работы: ___________________________________________________________________________
________________________________________________________________________________________
