Міністерство освіти і науки України
Національний університет «Львівська політехніка»
Кафедра ЕОМ
/
ЗВІТ
з лабораторної роботи №1
з дисципліни: «Архітектура комп’ютерів»
на тему: « Робота з симулятором машини Ноймана. Дослідження виконання машинного коду в автоматичному режимі »
Тема: Робота з симулятором машини Ноймана. Дослідження виконання машинного коду в автоматичному режимі.
Мета: Опанувати роботу на симуляторі машини Ноймана, зрозуміти і дослідити принцип виконання програми машиною Ноймана.
Теоретичні відомості:
CISC – complex instruction set computing (обчислення зі складною системою машинних інструкцій)
Аби дослідити дію машини Ноймана використовують симулятори цієї машини, що є готовими до використання комп’ютерними програмами. Коли в комп’ютері (в нас – в симуляторі комп’ютера) ОС нема, тоді кожну програму треба завершувати виконанням машинної інструкції СТОП. «Кроха» є DOS програмою, яку запускають у вікні DOS.
Формат машинної інструкції машини Ноймана
В комп’ютері використаний наступний класичний формат 3-адресної машинної інструкції:
Поле коду операції.
Довжина 3 біти
Поле адреси 1-го операнда.
Довжина 4 біти
Поле адреси 2-го операнда.
Довжина 4 біти
Поле адреси результату.
Довжина 4 біти
КОп
А1
А2
А3
Рис. 1.2 – Формат машинної інструкції
Про машину Ноймана
Структуру машини містить рис. 1.6.
/
Рис. 1.6.
Структура машини Ноймана, запропонована в 1945 році в Гарвардському університеті США.
За допомогою пристрою введення бінарні коди чисел і машинних інструкцій потрапляють (чорні лінії) транзитом через АЛП до пам’яті, де і зберігаються під час автоматичного виконання обчислень. Отже, під час введення АЛП зайнято транзитним пересиланням і комп’ютер не може обчислювати. Коли уведен00ня завершене, тоді по команді старту, що надає людина, комп’ютер починає виконувати заведену людиною до пам’яті програму автоматично.
При цьому бінарні коди з пам’яті, що надсилаються (синя лінія) до пристрою керування, сприймаються як машинні інструкції. На основі прийнятих з пам’яті кодів машинних інструкцій пристрій керування керує роботою всіх інших пристроїв комп’ютера (червоні штрихові лінії).
Бінарні коди, що надсилаються з пам’яті до АЛП (чорні лінії), сприймаються як коди чисел, що приймають участь в формування результату. Можливе збереження проміжних результатів обчислень в тій самій пам’яті чорна двохнаправлена лінія). Остаточні результати також спочатку надсилають до пам’яті, а вже потім виводять через пристрій виводу (чорна лінія).
Завдання: запустити симулятор, увести до нього коди машинних інструкцій і коди чисел, навчитися утворювати і змінювати ці коди, дослідити і пояснити принципи трактування машиною Ноймана бінарних кодів. Розробити тестову програму, завантажити програму і відповідні дані до симулятора, виконати програму в автоматичному режимі, проаналізувати і пояснити отримані результати, скласти звіт з виконання лабораторних досліджень та захистити його.
Хід виконання роботи:
Задано вираз відповідно до варіанту(4) :
r=5(x-y)/(z+y)
До симулятора уведена програма, яка обчислить заданий вираз:
Адреса пам’яті
Машинна інструкція
Коментар
Дія інструкції
Бінарний код
00002
(13) – (14) => (12)
011 1101 1110 11002
r = x - y
00012
(11) * (12) =>(12)
101 1011 1100 11002
r = 5 * r
00102
(15) + (14) => (10)
001 1111 1110 10102
k = z + y
00112
(12) / (10) => (12)
010 1100 1010 11002
r = r / k
01002
стоп, вивід (12) (12) (12)
111 1100 1100 11002
виведення результату
10102
z+y
проміжний результат (k)
10112
5
000 0000 0000 01012
const
11002
r
Результат
11012
x
Операнд
11102
y
Операнд
11112
z
Операнд
Оберемо довільні значення операндів, наприклад: x= 4010 , y=510 та z=1010, внесемо значення до відповідних комірок пам'яті.
Результат виконання програми в режимі АВТО:
/
Аналіз роботи програми:
В екранному вікні з’явилися операнди і результат в бінарній і десятковій формах.
r = 5 * ( 40 + 5) / ( 10 + 5) = 11,(66)10 ≈ 1110 = 10112
В вікні пам’яті в останній 12 комірці та суматорі (СМ) з’явилося бінарне значення суми.
Регістр інструкцій РК містить код останньої виконаної машинної інструкції (СТОП).
Лічильник інструкцій СК отримав значення 01012. Зафіксоване вмістиме показує адресу машинної інструкції, що розташована після останньої інструкції програми.
Помилок виконання немає.
Висновки: після виконання даної лабораторної роботи я опанувала роботу на симуляторі машини Ноймана (програма «Кроха»), зрозуміла і дослідила принцип виконання програми машиною Ноймана.