You are on page 1of 5

1.

Пояснити принцип конвеєрної обробки мікрооперацій


процесором.

Виконання кожної команди складається з ряду послідовних етапів (кроків,


стадій), суть яких не змінюється від команди до команди. З метою
збільшення швидкодії процесора і максимального використання всіх його
возможнось в сучасних мікропроцесора використовується конвеєрний
принцип обробки інформації. Цей принцип має на увазі, що в кожен момент
часу процесор працює над різними стадії виконання кількох команд, причому
на виконання каждо стадії виділяються окремі апаратні ресурси. За чергового
тактовом імпульс кожна команда в конвеєрі просувається на наступну стадію
обробки, виконана команда залишає конвеєр, а нова надходить в нього.
Конвеєрне пристрій можна сформулювати наступним чином. Кожна
микрооперации виділяється в окрему частину пристрою, в сукупності Які
розташовані в порядку виконання. У перший момент часу вхідні дані
надходять для обробки першою частиною. Після виконання першої
микрооперации перша частина передає результати своєї роботи другої
частини, а сама бере нову пару. Коли вхідні аргументи пройдуть через всі
етапи обробки, на виході пристрою з'явиться результат виконання операції.
Такий спосіб організації обчислень носить назву конвеєрно обробки. Кожна
частина пристрою називається щаблем конвеєра, а загальне число ступенів -
довжиною конвеєра.

2.Способи адресації операндів. Формати команд та даних.

У загальному випадку дані (операнди і результат) можуть зберігатися

в регістрах МП;

в осередках пам'яті;

в портах ЕОМ.
У програмі на мові ASSEMBLER програміст сам розподіляє пам'ять і
регістри під операнди і результати. Місце розміщення програміст вказує в
кожній команді, дотримуючись правил синтаксису:

В одній команді тільки один з операндів може бути розміщений в пам'яті.

Регістр може використовуватися для зберігання операнда або адреси. Якщо


регістр зберігає адресу зміщення, ім'я регістра полягає в квадратні дужки.

Розмір операнда визначається розміром регістра.

Результат операції за замовчуванням зберігається за адресою першого


операнда (за замовчуванням - означає, що відомості в команді про це
відсутні, тому транслятор приймає певний варіант - адреса першого
операнда).

У базовому процесорі використовується наступні способи адресації


операндів:

безпосередня

реєстрова

неявна

пряма

відносна
Опишемо способи адресації на прикладі команди з операцією «пересилання»,
мнемокод якої -обозначается на мові асемблер як MOV. Вхідний вплив у
вигляді двійкового коду, призначене для управління мікропроцесором,
називається командою (або інструкцією). Її головна функція - виконання
операцій над даними. Команда наказує кроки по реалізації мікропроцесором
заданої операції, що представляє собою функціонально завершене дію, яке
визначається типом використовуваних даних, джерелом їх отримання,
операцією над ними, приймачем розміщення результату, джерелом
отримання наступної команди [18]. Машинне представлення команди в
пам'яті, що складається з ряду нулів і одиниць, називається об'єктним
кодом команди. Для кращого сприйняття команди використовується її
символічне позначення або мнемокод.

Формат команди

Кожна команда повинна містити відомості, необхідні для її виконання.


Відомості кодуються. Для кодування кожної групи відомостей виділяється
своє поле. Сукупність полів, що містять необхідні відомості для виконання
необхідної операції, називають форматом команди. У форматі команди
повинні бути визначені:

 • функціональне призначення операції у вигляді коду операції;


 • адреси джерел даних. У загальному випадку повинні бути вказані
адреси двох операндів;
 • адреса місця розташування результату;
 • адреса наступної команди.

Способи зменшення формату команди. Рас дивимося гіпотетичну ситуацію.


Припустимо, що в форматі команди:

 • поле коду операцій (КО) займає 4 розряду, що дозволяє закодувати 24


= 16 операцій;
 • під адреси двох операндів-джерел, адреса місця розташування
результату, адреса наступної команди виділені поля AO1, А02, АР,
АСК (рис. 5.20) по 12 розрядів, що дозволяє в кожному випадку
адресувати 212 = 4К осередків пам'яті.

3.Регістри спеціальних функцій MKS 51 та їх характеристики.

Позначення Найменування Адреса Поч. значення Примітка

ACC Акумулятор E0H 00H Цей регістр означає те саме, що і A


при програмуванні на асемблері,
проте позначення А вказує на роботу
з акумулятором, а позначення ACC
вказує на роботу з байтом пам'яті.
Відповідно, використання мнемоніки
A дозволяє скоротити довжину
інструкції.

Регістр використовується
мікроконтролером тільки в операціях
B Регістр B F0H 00H множення/ділення. В усіх інших
операціях його можна
використовувати як загальний регістр

Регістр стану Його аналог у х86 — регістр


PSW D0H 00H
програми прапорців FLAGS

SP Покажчик стеку 81H 07H

Молодший байт
DPL 82H 00H
покажчика даних
Дані регістри формують один 16-
бітний віртуальний регістр DPTR.
Старший байт
DPH 83Н 00H
покажчика даних

P0 Порт 0 80H FFH

P1 Порт 1 90H FFH


Регістри-защіпки портів вводу-виводу
P2 Порт 2 A0H FFH

P3 Порт 3 B0H FFH

Регістр пріоритетів
IP B8H XXX00000b
переривань

Регістр дозволу
IE A8H 0XX00000b
переривань

Регістр режимів
TMOD 89H 00H
таймера/лічильника

Регістр керування
TCON 88H 00H
таймера/лічильника

Таймер/лічильник 0
TH0 8CH 00H
(старший байт)

Таймер/лічильник 0
TL0 8AH 00H
(молодший байт)

Таймер/лічильник 1
TH1 8DH 00H
(старший байт)

Таймер/лічильник 1
TL1 8BH 00H
(молодший байт)
Керування
SCON 98H 00H
послідовним портом

Цей регістр, як і DPTR, є також


віртуальним. При читанні замість
даного регістру підставляється буфер
приймача, при записі — буфер
Буфер послідовного
SBUF 99H Невизначено передавача. Дані буфери програмно
порту
недоступні (щоб програміст не зміг
записати у буфер приймача і читати з
буфера передавача), проте SBUF —
доступний.

n-МОН 0XXXXXX
Керування X
PCON 87H
енергоспоживанням
КМОН 0XXX0000

-4.

You might also like