- •Харківський національний університет будівництва та архітектури
- •Методичні вказівки
- •Для практичних занять з дисципліни
- •«Мікропроцесорна техніка»
- •Практична робота №1. Тема «Представлення чисел в різних системах числення».
- •Практична робота №2. Тема “ Арифметичні дії над двійковими числами”
- •Контрольні питання.
- •Практична робота №3 Тема “Програмна модель мікропроцесора кр580м80а”
- •14. Як перейти від останова до запуску мікропроцесора? Практична робота №4 Тема: «Програмування мікропроцесора. Послідовні алгоритми»
- •Таблиця 2.
- •Практична робота №5. Тема: «Програмування мікропроцесора. Алгоритми з розгалуженнями»
- •Таблиця 5
- •Рекомендована література.
Таблиця 2.
(Тс)
|
(А)
|
Виконувана операція |
Х 1 1 0 |
1 0 1 1 0 1 1 0 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 |
Початкове завантаження А Зсув ліворуч без Тс Зсув праворуччерез Тс Зсув праворуччерез Тс
|
У табл. 3 наведена відповідна схемі алгоритму на рис.3 програма з представленням команд в кодових комбінаціях.
Таблиця 3
Адреса команди в ОП (в 16-річній системі) |
Команда в кодовій комбінації |
Пояснення |
0071 0072 0073 0074 |
01111010 00000111 00011111 00011111 |
Блок1: А<(D) Блок2: Зсув ліворуч без Тс Блок3: Зсув праворуч через Тс Блок4: Зсув праворуч через Тс |
а.)
11
22
33
4
4 5
6
б) 7
Рис.3 Рис.4
Завдання 2. Скласти програму роботи мікропроцесора мовою кодових комбінацій.
Скласти числа, що зберігаються в 20510 й 20610 чарунках пам'яті й результат записати в стек.
Скласти десять 8-бітових чисел, що зберігаються в пам'яті починаючи з 20610 комірки пам'яті. Результат записати в стек.
Скласти числа, що зберігаються в 20510 й 20610 чарунках пам'яті й результат записати в стек.
Скласти десять 8-бітових чисел, що зберігаються в пам'яті починаючи з 20610 комірки пам'яті. Результат записати в стек.
Скласти числа, що зберігаються в 20510 й 20610 чарунках пам'яті й результат записати в стек.
Скласти десять 8-бітових чисел, що зберігаються в пам'яті починаючи з 20610 комірки пам'яті. Результат записати в стек.
Скласти числа, що зберігаються в 20510 й 20610 чарунках пам'яті й результат записати в стек.
Скласти десять 8-бітових чисел, що зберігаються в пам'яті починаючи з 20610 комірки пам'яті. Результат записати в стек.
Скласти числа, що зберігаються в 20510 й 20610 чарунках пам'яті й результат записати в стек.
Скласти десять 8-бітових чисел, що зберігаються в пам'яті починаючи з 20610 комірки пам'яті. Результат записати в стек.
Скласти числа, що зберігаються в 20510 й 20610 чарунках пам'яті й результат записати в стек.
Скласти десять 8-бітових чисел, що зберігаються в пам'яті починаючи з 20610 комірки пам'яті. Результат записати в стек.
Практична робота №5. Тема: «Програмування мікропроцесора. Алгоритми з розгалуженнями»
Ціль роботи: опанувати програмування розгалужень в алгоритмах роботи мікропроцесора.
Форма звіту: письмовий звіт з результатами виконання практичного завдання.
Завдання 1. Программирование розгалужень.
Методичні вказівки.
Приклад 1. Проаналізувати вміст молодшого розряду числа, що бережеться в регістрі В мікропроцесора. Якщо воно рівне нулю, то до вмісту регістра В слід додати вміст регістра З; якщо воно рівне одиниці, то до вмісту регістра В слід додати вміст регістра D. На рис.4 показана схема алгоритму рішень цієї задачі. Тут блоки 1 і 2 здійснюють передачу вмісту молодшого розряду регістра У в трігері Тс регістра ознак. Блок 3 реалізує розгалуження по вмісту трігера Тс : залежно від значення вмісту цього трігера в акумулятор передається або вміст регістра З (блок 4), або вміст регістра D (блок 5). Блок 6 здійснює складання .Блок 7 одержану в акумуляторі суму пересилає в регістр В.
У табл. 4 показано розміщення команд в осередках ОП, реалізовуючих розглянутий алгоритм.
Таблиця 4
Адреса чарунки УП |
Вміст чарунки (мікрокоманда) |
0000 0001 х2 = 0 0010 х2 = 1 0011 х1 = 0 0100 х1 = 1 0101
|
МК1 (МК ОУ:Y1; МК БМУ :БП) МК2 (МК ОУ: - ; МК БМУ :УсП по х2) МК3 (МК ОУ: - ; МК БМУ :УсП по х1) МК6 (Продовження) МК5 (МК ОУ:Y3; МК БМУ :БП) МК4 (МК ОУ:Y2; МК БМУ :БП)
|
Припустимо, що команда, яка реалізовує операцію блока1, поміщається в чарунка ОП з адресою 0167. При виконанні програми наступна команда прочитуватиметься з сусіднього чарунки з адресою 0168, і в цьому чарунки повинна берегтися команда, що реалізовує операцію блоку 2. Потім з трьох чергових осередків з адресами 0169, 016А, 016В, повинна прочитуватися трьохбайтова команда умовного переходу (УсП) по (Тс) = 1 (блок 3): при (Тс) = 0 не відбувається порушення природного порядку проходження осередків, з яких при виконанні прочитуються команди, і чергова команда (блок4) прочитується з чарунки з адресою 016С, при (Тс) =1 відбувається перехід до чарунки 0170 ( ця адреса приводиться в другому і третьому байтах команди умовного переходу), що береже команду блоку 5. Далі незалежно від того, виконується команда блоку 4 або команда блоку 5, повинна бути виконана операція, що передбачається блоком 6. Після виконання команди, прочитуваної з чарунки 0170, чергова команда блоку 6 прочитується з сусіднього чарунки з адресою 0171. Але якщо виконується команда блоку 4, то після її виконання перехід до чарунки 0171 може бути виконаний трьохбайтовою командою безумовного переходу, що поміщається в осередки з адресами 016D, 016E, 016F ( в другому і третьому байтах цієї команди указується адреса переходу 0171). Потім з чергового чарунки 0172 прочитується команда, що виконує операцію блоку 7.
У табл. 5 приведена програма даної задачі.