офк звіт 2
.docНі один з прапорців не загорівся бо 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 що є від’ємним результатом, а віднімання викликало переповнення розрядної сітки.
Виконаємо дослідження інстркції LOAD ( Код 0000 АААА АААА АААА , де
АААА АААА АААА код адреси числа, яке буде занесене в акумулятор)
Перед перед виконанням дослідження занесемо до 10-ї комірки число 2510=0000 0000 0001 10012 , до нульової комірки занесемо машинний код LOAD10 (0000 0000 0000 1010),
А до Лічильника Адреси Інструкцій занесемо адресу першої інструкції, тобто
0000 0000 0000, включимо покроковий режим і натиснем ПУСК.
Мікропрограма:
№ п/п |
Мнемонічний запис мікрооперації |
Код що обробляєтья |
Коментар |
1 |
ЛАІ → РА |
0000 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 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 0000 |
Вибір першої інструкції і занесення її до Регістру адреси |
2 |
РА → РД |
0011 0000 0000 1010 |
Вибір коду першої інструкції і занесення його до регістру даних |
3 |
РД→ РІ |
0011 0000 0000 1010 |
Декодування інструкції в Регістрі Інструкцій. |
4 |
РІ→ РА |
0000 0000 1010 |
Занесення адреси числа до регістру адреси |
5 |
РА → РД |
0000 0000 0000 1010 |
Занесення коду числа в регістр даних |
6 |
РД→ А |
0000 0000 0000 0011 |
Віднімання вмісту регістру даних від вмісту акумулятора |
7 |
А→ РО |
0000 0000 0000 0011 |
Перевірка результату в регістрі ознак |
Після виконання інструкції в акумуляторі міститься число 0000 0000 0000 0011 а в Регістрі Ознак немає активних прапорців. Дійсно 13 – 10 = 3.
Висновок : я засвоїв порядок виконання програм у комп’ютері і ознайомився з потактовим і покроковим режимами роботи навчального комп’ютера, з форматом та набором інструкцій симулятора навчальної ЕОМ. А також засвоїв формати і способи використання інструкцій звертання до пам’яті та інструкцій арифметичних операцій.