Головна |
При природній адресації адреса наступної команди виходить з адреси виконуваної команди збільшенням його на крок адресації (1, 2, 4 і т.д. в залежності від кількості байт в команді). Проводиться ця операція шляхом автоматичної модифікації вмісту СЧК після виконання поточної команди. Для управління ходом виконання програм і організації розгалужень в систему команд процесорів з природною адресацією були введені команди
Малюнок 4.8- Формат команд умовного і безумовного переходів
У різних машинах реалізація цих команд різна, проте загальний підхід такий: вміст поля адреси переходу команди завантажується в СЧК, після чого процесор продовжує виконання програми з нового адреси.
Команди безумовного переходу наказують здійснювати перехід за програмою незалежно від будь-яких умов. Існують команди безумовного переходу за непрямим адресою. У цьому випадку в коді команди вказують адресу осередки, в якій зберігається адреса переходу.
При умовному переході адреса наступної команди залежить від деякого умови, отриманого в результаті виконання попередньої. Якщо умова виконується, то процесор переходить до виконання програми за адресою, вказаною в адресній частині команди, якщо ні, то до команди, наступної безпосередньо за командою умовного переходу.
4.9 Процедура виконання команд виклику підпрограм
Іншим типом команд передачі управління є команди виклику підпрограм. Їх особливість полягає в тому, що по закінченню виконання підпрограми вони повинні забезпечити повернення до виконання програми, з якою підпрограма була викликана. Для цього адресаповернення повинен бути запомнен, для чого в СЧК формується просунутий адреса, який потім зберігається в пам'яті (або в стеку). Для переходу до виконання підпрограми в СЧК заноситься адресна частина команди її виклику. По закінченню виконання підпрограми адреса наступної команди основної програми, раніше збережений в стеку, викликається з нього, заноситься в СЧК і виконання програми продовжується. Для організації повернення в основну програму підпрограма повинна закінчуватися командою "Повернення" ("RETURN"). Крім неї існує також і команда "Умовного повернення".
Формат команди "Перехода до підпрограми" наведено на малюнку 4.9.1.
Малюнок 4.9.1- Формат команди "Перехода до підпрограми"
Процес виконання команд "Виклик підпрограм" проілюстровано на малюнку 4.9.2. Короткий відрізок прямої на цьому малюнку відповідає одній команді, довгий-переходу до виконання підпрограми або поверненню з неї.
Малюнок 4.9.2 - Процес виконання команди "Виклик підпрограми"
4.10 Контрольні питання
Перерахуйте функції процесора.
Які функції РК і СЧК в процесорі?
Призначення АЛУ процесора?
Що дає введення до складу АЛУ РОНов?
Призначення УУ процесора?
Основна відмінність між апаратними і вбудоване програмне УУ?
Призначення рамках УУ?
Перерахуйте основні вузли блоку мікропрограмного управління.
Опишіть послідовність виконання команди пересилання даних між РОН, використовуючи структуру процесора з мікропрограмного управлінням.
Що таке ССП (PSW)?
Опишіть процедуру виконання команд умовного і безумовного переходів.
Опишіть процедуру виконання команди виклику підпрограми.
Яке основна відмінність процедур виконання команд виклику підпрограм і виконання команд умовного і безумовного переходів?
Узагальнені структури процесорів з безпосередніми і магістральними зв'язками | Декомпозиція процесора на УА і ОУ | АЛУ для додавання і віднімання чисел з фіксованою комою | Методи прискорення множення | Особливості операцій десяткової арифметики | Операції над числами з плаваючою комою | Класифікація УУ | апаратні УУ | мікропрограмні УУ | Робочий цикл процесора |