Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

офк звіт 2

.doc
Скачиваний:
9
Добавлен:
11.12.2018
Размер:
240.13 Кб
Скачать

Загорівся прапорець що означає нуль, бо 3-3=0.

При А>B (4=3)

інструкція

Крок 1

Крок 2

Крок 3

Крок 4

РА

000000001010

000000001011

000000001100

000000000011

РД

0000000000000100

0000000000000011

0000000000000001

0111110000000000

S C Z

----

----

----

----

Акумулятор

0000000000000100

0000000000000001

0000000000000001

0000000000000001

РІ

1010

0011000000001011

00001000000001100

0111110000000000

ЛАІ

000000000001

000000000010

000000000011

000000000011

Ні один з прапорців не загорівся бо 4-3=1 і не викликає переповнення розрядної сітки , від’ємного знака чи нульового результату

При А>B (3<4)

інструкція

Крок 1

Крок 2

Крок 3

Крок 4

РА

000000001010

000000001011

000000001100

000000000011

РД

0000000000000011

0000000000000100

0000111111111111

10111110000000000

S C Z

----

SC

SC

SC

Акумулятор

0000000000000011

0000000000000001

0001000000001100

1111111111111111

РІ

0000000000001010

0011000000001011

0001000000001100

0111110000000000

ЛАІ

000000000001

000000000010

000000000011

000000000011

Загорілись прапорці S і C бо 3-4=-1 що є від’ємним результатом, а віднімання викликало переповнення розрядної сітки.

5. Ввести у симулятор та виконати дослідження у потактовому режимі 3-х окремих інструкції – LOAD, STORE i SUB. Пояснити необхідну підготовку числових даних, виписати порядок виконання інструкцій у вигляді мікропрограм із вказанням реальних значень регістрів і поясненням дій, що виконуються у кожному такті.

Виконаємо дослідження інстркції LOAD ( Код 0000 АААА АААА АААА , де

АААА АААА АААА код адреси числа, яке буде занесене в акумулятор)

Перед перед виконанням дослідження занесемо до 10-ї комірки число 2510=0000 0000 0001 10012 , до нульової комірки занесемо машинний код LOAD10 (0000 0000 0000 1010),

А до Лічильника Адреси Інструкцій занесемо адресу першої інструкції, тобто

0000 0000 0000, включимо покроковий режим і натиснем ПУСК.

Мікропрограма:

п/п

Мнемонічний запис мікрооперації

Код що обробляєтья

Коментар

1

ЛАІ РА

0000 0000 0000

Вибір першої Інструкції і занесення її до Регістру Адреси

2

РА РД

0000 0000 0000 1010

Вибір коду інструкції Load10 і занесення його до Регістру Даних.

3

РД РІ

0000 0000 0000 1010

Декодування інструкці в Регістрі Інструкцій.

4

РІ РА

0000 0000 0000 1010

Вибір адреси числа.

5

РА РД

0000 0000 0000 1000

Вибір коду числа і запис його до Регістру Даних.

6

РД А

0000 0000 0000 1000

Перенесення коду числа з Регістру Даних до Акумулятора.

Виконаємо дослідження інстркції Store

Код 0001 АААА АААА АААА , де

АААА АААА АААА код адреси куди буде записаний вміст акумулятора.

Для виконня занесемо код інструкції 0001 0000 0000 1011 в 0-ву комірку, дані будуть збережені в 11 (0000 0000 1011) комірку, що видно з коду інструкції. В акумулятор занесемо число 15 двійковий код якого 0000 0000 0000 1111 . До ЛАІ занесемо адресу першої інструкції, включимо покроковий режим і нажмемо Пуск.

Мікропрогрма:

п/п

Мнемонічний запис мікрооперації

Код що обробляєтья

Коментар

1

ЛАІ РА

0000 0000 0000

Вибір першої Інструкції і занесення її до Регістру Адреси

2

РА РД

0001 0000 0000 1011

Вибір коду інструкції Store11 і занесення його до Регістру Даних.

3

РД РІ

0000 0000 0000 1011

Декодування інструкції в Регістрі Інструкцій.

4

А РД

0000 0000 0000 1111

Заенесення вмісту Акумулятора до Регістру Даних

5

РД РА

0000 0000 0000 1111

Вибір коду числа і запис його до 11 комірки.

Виберемо 11 комірку і натиснемо читання, тоді в регістрі даних появиться число

0000 0000 0000 1111 (15). Отже інструкція виконана правильно.

Виконаємо дослідження інструкції SUB.

Код 0011 АААА АААА АААА де АААА АААА АААА адреса комірки в якій знаходиться число яке буде відніматися від вмісту акумулятора.

Спочатку занесемо в 10-ту комірку число 10 (0000 0000 0000 1010). Потім занесемо в нульову комірку код першої інструкції 0011 0000 0000 1010. Після цього занесемо в акумулятор число 11 (0000 0000 0000 1011). До ЛАІ занесемо адресу першої інструкції, включимо покроковий режим і нажмемо Пуск.

Мікропрограма:

п/п

Мнемонічний запис мікрооперації

Код що обробляєтья

Коментар

1

ЛАІ РІ

0000 0000 0000

Вибір першої інструкції і занесення її до Регістру адреси

2

РА РД

0011 0000 0000 1010

Вибір коду першої інструкції і занесення його до регістру даних

3

РД РІ

0011 0000 0000 1010

Декодування інструкції в Регістрі Інструкцій.

4

РІ РА

0000 0000 1010

Занесення адреси числа до регістру адреси

5

РА РД

0000 0000 0000 1010

Занесення коду числа в регістр даних

6

РД А

0000 0000 0000 0001

Віднімання вмісту регістру дани від вмісту акумулятора

7

А РО

0000 0000 0000 0001

Перевірка результату в регістрі ознак

Після виконання інструкції в акумуляторі міститься число 0000 0000 0000 0001 а в Регістрі Ознак немає активних прапорців. Дійсно 11 – 10 = 1.

Висновок : я засвоїв порядок виконання програм у комп’ютері і ознайомився з потактовим і покроковим режимами роботи навчального комп’ютера, з форматом та набором інструкцій симулятора навчальної ЕОМ. А також засвоїв формати і способи використання інструкцій звертання до пам’яті та інструкцій арифметичних операцій.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]