МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
Кафедра ЕОМ
ЗВІТ
до лабораторної роботи №1
з дисципліни " АРХІТЕКТУРА КОМП’ЮТЕРІВ "
на тему:
“ Робота з симулятором машини Ноймана. Дослідження виконання машинного коду в автоматичному режимі.”
Львів – 2012
Мета: опанувати роботу на симуляторі машини Ноймана, зрозуміти і дослідити принцип виконання програми машиною Ноймана.
Завдання: Запустити симулятор, увести до нього коди машинних інструкцій і коди чисел, навчитися утворювати і змінювати ці коди, дослідити і пояснити принципи трактування машиною Ноймана бінарних кодів. Розробити тестову програму, завантажити програму і відповідні дані до симулятора, виконати програму в автоматичному режимі, проаналізувати і пояснити отримані результати, скласти звіт з виконання лабораторних досліджень та захистити його.
Завдання згідно варіанту:
29
Теоретичні відомості.
Керування роботою з симулятором
Клавіши керування комп’ютером
Дія клавіш
Ілюстрація
Інформаційне вікно
Негайно задати АВТО: F1, A
Негайно задати РЕДАКТОР: F2, Е
Негайно задати ШАГ: F3, S
Негайно задати ТАКТ: F4, Т
Вибирати режим
безпосередньо курсором: F5, R
Вибір і встановлення режиму роботи.
В режимі редактора можна змінювати вмістиме комірок пам’яті, суматора (СМ), лічильника інструкцій (СК), регістра інструкції (РК).
В режимі АВТО одним натиском на клавішу ENTER змушують комп’ютер виконати всю програму.
В режимі ШАГ одним натиском на клавішу ENTER змушують комп’ютер виконати чергову інструкцію програми.
В режимі ТАКТ одним натиском на клавішу ENTER змушують комп’ютер виконати чергову мікродію виконання чергової інструкції програми. Зауважимо, що виконання кожної інструкції розкладають на виконання певної послідовністі мікрокроків, кожний з яких називають мікродією (або мікрокомандою).
/
Вікно пам’яті
Бінарні адреси пам’яті не змінюються. Вмістиме комірок пам’яті (бінарні коди) змінюються. Для цього в режимі редагування потрібно підвести курсор під біт, що змінюється та натиснути 0 або 1.
Вікно арифметичного та логічного пристрію (АЛП)
Показує:
код виконуваної інструкції, що зберігає регістр інструкції (РК=регистр команди);
вмістиме суматора (СМ);
вмістиме лічильника номера виконуваної інструкції (СК=счетчик команд).
Екранне вікно для візуалізації значень операндів і результатів обчислень
Показує десяткові значення вмістимого комірок пам’ті за адресами А1, А2 та А3 інструкції СТОП (Виведення), бінарний код операції якої є 1112. Отже, коли за одною з трьох вказаних адрес розміщено інструкцію ми побачимо її як якесь число. Це на перший погляд є дивною, але принципово важливою рисою машини Ноймана, якою є ПК та багато інших комп’ютерів.
Довідкове вікно
Вікно містить всі дозволені коди операцій, а також правила маніпулювання з режимами симулятора за допомогою клавіатури. Всього дозволено виконання вісьми операцій (пересилання вмісту комірки пам’яті з адресою А1 до коміркм пам’яті з адресою А3 (код 0002), додавання (0012), ділення вмісту А1 на вміст А2 (код 0102), обчислення модуля різницівмісту А1 і А2 з записом результату до А3 (код 0112), умовного переходу (коли вмісти А1 і А2 є рівними, тоді наступною виконують інструкцію не з наступної за чергою адресою, а з адреси А3 (код 1002), множення вмісту А1 на вміст А2 з записом добутку до А3 (код 1012, ще одного умовного переходу [коли вміст А1 є більшим від вмісту А2, тоді наступно виконуваною є інструкція з комірки з адресою А3] (код 1102) та завершення обчислень і виведення до дисплейного вікна вмістимого комірок пам’яті з адресами А1, А2. А3.
Алгоритм програми
Для розв’язання поставленої задачі
29
я використаю 10 комірок адрес, та виконаю наступні кроки:
1) В адресу 1001 запишу число 9
2) В адресу 1010 запишу число 2
3) В адресу 1011 запишу число
4) В адресу 1100 запишу число
5) В адресу 0000 запишу операцію множення комірок 1011 і 1010, (2*), результат запишу до комірки 1011
6) В адресу 0001 запишу операцію додавання комірок 1011 та 1100, ((2*)+), результат перезапишу в комірку 1011
7) В адресу 0010 запишу операцію додавання комірок 1011 та 1101, ( (2*)+), результат перезапишу в комірку 1011
8) ) В адресу 0011 запишу операцію множення комірок 1011 та 1001, (9*( (2*)+)), результат перезапишу в комірку 1011
9) Виведу результат виконання програми на Екран.
Результати виконання програми
/
Рис.1. Вікно програми перед запуском(з введеними мікрокомандами)
/
Рис.2. Результат виконання програми в режимі АВТО
Висновок
Опанував роботу на симуляторі машини Ноймана, зрозумів і дослідив принцип виконання програми машиною Ноймана.