Частина тексту файла (без зображень, графіків і формул):
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
Кафедра ЕОМ
/
ЗВІТ
до лабораторної роботи № 2
з дисципліни
«Архітектура комп'ютерів, частина 1»
на тему:
“ Дослідження макроалгоритмів та мікроалгоритмів виконання машинних інструкцій ”
Мета: зрозуміти і дослідити макроалгоритм та мікроалгоритм виконання кожної машинної інструкції машини Ноймана.
Завдання:
Покроковим режимом протестувати виконання кожної машинної інструкції, проаналізувати і пояснити отримані результати, потактовим режимом протестувати поокреме виконання кожної машинної інструкції, проаналізувати і пояснити отримані результати, скласти звіт з виконання лабораторних досліджень та захистити.
Завдання згідно варіанту:
10
r =110+111+…+125
/
Мал.1 Програма для вирішення виразу r =110+111+…+125
Виконання програми
/
Мал.1.1 Перший крок
Копіюємо число 11010 за адресою [1101] в адресу [1001] призначену для зберігання суми (110+111+…+125).
ТАКТ:
МК1: memory(0000) -> IR
МК2: PC+1 -> PC
МК3: memory (1101) -> ACC
МК4: ACC -> memory(1001)
/
Мал. 1.2 Крок другий
На цьому кроці збільшуємо початкове число 110 (в циклі дане число буде збільшуватись) на одиницю щоб дістати доданок. Результат зберігаємо в комірці за адресою [1010] next.
ТАКТ:
МК1: memory(0001) -> IR
МК2: PC+1 -> PC
МК3: memory (1101) -> ACC
МК4: ACC + memory(1100) -> ACC
MK5: ACC -> memory(1010)
/
Мал. 1.3. Крок третій
Ця інструкція реалізує додавання двох чисел: 1- результат додавання попередньої дії, 2 – наступний доданок. Результат зберігаємо в 1-шу адресу.
ТАКТ:
МК1: memory(0010) -> IR
МК2: PC+1 -> PC
МК3: memory (1001) -> ACC
МК4: ACC + memory(1010) -> ACC
MK5: ACC -> memory(1001)
/
Мал. 1.4. Крок четвертий
Пересилаємо значення доданка у комірку раніше використовувану для числа 110. Ця дія необхідна для подальшого знаходження доданка.
ТАКТ:
МК1: memory(0011) -> IR
МК2: PC+1 -> PC
МК3: memory (1010) -> ACC
MK4: ACC -> memory(1101)
Мал. 1.5. Крок п’ятий
Інструкція порівняння: Якщо доданок менший від границі( тобто 125 згідно умови), то переходимо до команди за адресою [0001].
ТАКТ:
МК1: memory(0100) -> IR
МК2: PC+1 -> PC
МК3: memory (1011) -> ACC
МК4: ACC > memory(1101) -> memory(0001)
Мал. 1.6. Крок шостий
Аналогічно другому кроку, виконується робота з новими значеннями і так дальше поки доданок не буде рівний 125.
ТАКТ:
МК1: memory(0001) -> IR
МК2: PC+1 -> PC
МК3: memory (1101) -> ACC
МК4: ACC + memory(1100) -> ACC
MK5: ACC -> memory(1010)
/
Мал. 1.8. Результат виконання програми.
Такт команди після виходу з циклу.
Адреса 0101
ТАКТ:
МК1: memory(0101) -> IR
МК2: PC+1 -> PC
МК3: memory (1110) -> Вивід на екран 1-го числа
МК4: memory (1001) -> Вивід на екран 2-го числа
MK5: memory (1001) -> Вивід на екран 3-го числа
ВИСНОВОК
На даній лабораторній роботі я зрозумів і дослідив макроалгоритм та мікроалгоритм виконання кожної машинної інструкції машини Ноймана.
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!