Команды безусловных переходов 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Команды безусловных переходов



Команда JMP – безусловный переход. Осуществляет переход в любую точку программы, расположенную как в текущем программном сегменте, так и в другом сегменте.

Пример: Выполнить безусловный внутрисегментный переход:

JMP NEAR LABEL или JMP LABEL.

Jump near – (прыжок недалеко) осуществляется переход к выполнению команды, первая из которых обозначена меткой lable, которая находится в текущем сегменте кодов, т.е. в преде

лах 64 кБайт.

При переходе в пределах сегмента изменяется содержимое IP.

Пример: выполнить безусловный межсегментный переход: JMP FAR LABEL. JMP FAR – (прыжок далеко) осуществляется переход к выполнению команд, первая из которых обозначена меткой LABEL. Эта метка находится в пределах всей памяти объемом до 1МБ.

При межсегментном переходе изменяется IP и содержимое сегментного регистра кодов CS.

Команды условных переходов

Осуществляют передачу управления в зависимости то результатов предыдущих операций.

Различают следующие виды условных переходов, которые используют для установки соотношений чисел со знаком, без знака и произвольных чисел. При сравнении чисел со знаком условия:

«Больше» – G – greates

«Меньше» – L – less.

При сравнении без знака:

«Над» – A – Above;

«Под» – B – below.

Равенство – E – egular;

Не равенство – N – not.

Команды вызова и возврата из подпрограмм

CALL – позволяет вызвать из п/п, расположенному как в текущем программном сегменте, так и в др. обл. памяти. Изменяется значение IP или IP и CS. Также как и в ком. JMP, но перед этим происходит автоматическая запись в стек текущих значений этих регистров, что обеспечивает запоминание точек возврата из п/п.

RET – используется для возврата из п/п. под действием этой команды происходит передача управления по адресу возврата, занесённому в стек при выполнении ком. CALL.

Пример:

 

Вызвать из п/п, расположенную в некотором месте памяти объёмом 1 МБ с адресом NAME.

CALL FAR NAME

Вызов п/п с адресом NAME.

Команды циклов

Служат для удобства выполнения вычислительных циклов.

LOOP (цикл, пока CX≠0)

LOOPNZ/LOOPNE (цикл, пока не 0/не равно)

LOOPZ/LOOPE (цикл, пока 0/равно)

JCXZ (переход по нулю в CX)

Пример: выполнить последовательность команд 100 раз. Необходимо занести в регистр СХ кол-во повторений.

MOV CX, 100

Затем записывается последовательность команд, первая из которых начинается меткой М1

М1: <последовательность команд>

LOOP M1

Эта команда уменьшает содержимое СХ на 1, а затем сравнивает его с 0, если СХ ≠ 0, осуществляется переход к выполнению команды с меткой М1; если СХ=0, то выходим из цикла и выполняем след. ком-ду за LOOP.

К циклу относятся:

LOOPE M1 (loop if egular – если равен)

LOOPNE M1 (loop if not egular – если не равен).

Команды прерывания

МП і8080 может обрабатывать 256 типов прерываний. По команде INT процессор переходит к выполнению программы обслуживания прерывания указанного типа, причём автоматически выполняются действия, необходимые для обеспечения возврата в точку прерывания: содержимое F записывается в стек (PUSH F), сбрасываются флаги IF и TF(IF=TF=0), текущие значения регистров CS и IP записываются в стек (CS стек, стек IP)

Для определения начального адреса программы обслуживания нужного типа существует таблица уровней прерывания. Для каждого из 256 уровней прерывания в этой таблице отведено 4 байта. Первые 2 байта определяют значение IP. Вторые 2 байта – сегментного регистра CS. Начальный адрес программы обслуживается, который записывается в ячейки памяти 0 – 3FFH.

INTO – команда прерывания при переполнении, когда значение OF =1.

 

(type=4). Эта команда используется после арифметич. Команд над числами со

знаком.

INRET – ставится в конце каждой программы обслуживания прерывания и обеспечивает возврат из прерывания. По этой команде МП извлекает из стека значения IP и CS, восстанавливает значения флагового регистра F по команде POPF.

Лекція № 1Архітектура ЕОМ

Розділ 4 Загальні принципи побудови МПС

Лекція №2 Загальні поняття та визначення МПС. Структурна схема МПС. Організація шин.

Мікропроцесор (МП) — це пристрій, що здійснює прийом, обробку й видачу інформації. Конструктивно МП містить одну або кілька інтегральних схем і виконує дії, певні програмою, записаної в пам'яті.

Мікропроцесорна система — це обчислювальна, контрольно-вимірювальна або керуюча система, основним пристроєм обробки інформації в якій є МП. Мікропроцесорна система будується з набору мікропроцесорних БІС.

Мультимікропроцесорна (або мультипроцесорна) система — система, що утвориться об'єднанням деякої кількості універсальних або спеціалізованих МП, завдяки чому забезпечується паралельна обробка інформації й розподілене керування.

Мікропроцесорний комплект (МПК) — сукупність інтегральних схем, сумісних по електричних, інформаційних і конструктивних параметрах і призначених для побудови електронно-обчислювальних апаратур і мікропроцесорних систем керування. У типовий состав МПК входять: БІС МП (один або кілька корпусів інтегральних схем); БІС оперативних запам'ятовувальних пристроїв (ОЗУ); БІС постійних запам'ятовувальних пристроїв (ПЗУ); БІС інтерфейсів або контролерів зовнішніх пристроїв; службові БІС (тактовий генератор, регістри, шинні формувачі, контролери шин, арбітри шин).

Мікропроцесори й МПК класифікують по таких ознаках: призначення; кількість БІС; спосіб керування; тип архітектури; тип системи команд.

 

МПС – сукупність інформаційно-обчислювальних засобів, куди входить один або декілька мікропроцесорів.

МПС – це цифрові системи оброблення інформації і керування, функціональні можливості, яких визначаються програмним забезпеченням, а зв’язок із зовнішнім середовищем здійснюється периферійними пристроями. На основі МПС реалізують мікрокомп’ютери, інформаційні мережі, системи штучного інтелекту та інш.

Як і комп’ютер, МПС містить такі пристрої:

· Процесор, який виконує основні функції керування і оброблення інформації4

· Запам’ятовуючі пристрої на пів провідникових мікросхемах, призначені для зберігання програм і даних;

· Пристрої введення-виведення, які забезпечують взаємозв’язок із зовнішніми пристроями.

Пристрої МПС об’єднані між собою внутрішньо-системним інтерфейсом і взаємодіють за адресним принципом.

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

Рис. 1.1 Структура магістральної МПС

 

МПС поділяються на універсальні, спеціалізовані та багатопроцесорні.

Всі елементи структури з’єднані за допомогою шин.

Шина – інформаційний канал, який поєднує всі функціональні блоки МПС та забезпечує обмін даними у вигляді двійкових чисел.

Шина уявляє собою n провідників та один загальний провідник (земля). У паралельній шині інформація передається одночасно за окремими лініями, в послідовній шині – по одній лінії послідовно.

Всі загальні блоки МПС з’єднані з однією паралельною шиною, яка має назву системна шина. Системна шина містить три шини: адресу, даних, управління.

Шина адресу являється спрямованою в один бік. Вона призначена для передачі адреси комірки пам’яті чи Пристрою вводу виводу (ПВВ). Напрям передачі по шині адресу – від МП до зовнішніх пристроїв.

Шина даних спрямована у два боки. Вона призначена для передачі даних між блоками МПС. Інформація передається як від МП, так і до нього.

Шина управління спрямована в один бік. Вона призначена для передачі управляючих сигналів.

 

Розділ V Архітектура МПС

Лекція №3 Гарвардська та Фоннеймановська архітектури МПС. Складові частини процесора та їх призначення.

Архітектура Мікропроцесора

Поняття архітектури мікропроцесора визначають його складові частини, а також зв’язки та взаємодію між ними. До архітектури входить:

  • Структурна схема мікропроцесора;

· Програмна модель МП (опис функцій регістрів);

· інформація про організацію пам’яті (ємність та способи адресації пам’яті);

· опис організації процедур вводу/виводу.

Існують два загальних типи архітектури – фоннеймановська та гарвардська. Фоннеймановську архітектуру запропонував у 1945 році американський математик Джо фон Непман. Особливістю цієї архітектури є те, що програма та дані знаходяться у збій пам’яті, доступ до якої здійснюється по одній шині даних та команд.

Гарвардська архітектура вперше була реалізована в 1944 році в релейній обчислювальній машині Гарвардського університету (США). Особливістю цієї архітектури є те, що пам’ять даних та пам’ять програм поділені і мають окрему шину даних та шину команд, що дозволяє підвищити швидкодію МПС.

Процесор – це основна функціональна частина ЕОМ, яка інтерпретує та виконує команди, тобто безпосередньо реалізує програмно-керований процес обробки даних. Процесор, який виконує в обчислювальній системі основні функції, називається центральним (ЦП).

ЦП містить регістри, АЛП, пристрій управління, блок керування, блок інтерфейсу для з’єднання із зовнішнім середовищем – пам’яттю, периферійними пристроями та виконує функції обробки даних та управління процесами обміну інформацією.

 

 

Рис. Структура процесора

Процесор складається з пристрою керування (ПК), арифметико-логічного пристрою (АЛП), блока інтерфейсу (БІ) для об’єднання з зовнішнім середовищем. Зовнішнє середовище – це память та периферійні пристрої.

УЛП складається з універсального двійкового комбінованого суматора, регістру регістру для тимчасового зберігання 2-х операндів та результату операції, а також флаговий регістр.

В РЗП (регістровий запам’ятовуючий пристрій) зберігаються початкові дані, проміжні кінцеві результати, адресант даних, константи, які необхідні в процесі виконання команд.

ПК – послідовно зчитує коди команд з пам’яті і розміщує їх у регістр команд.

БУ (блок управління) – існують апаратні, мікропрограмні та комбіновані.

Апаратні – побудовані на основі схемної логіки; мікропрограмні – програмної пам’яті; комбіновані – використовують обидва способи.

Інтерфейс – сукупність шин, сигналів, допоміжних мікросхем та алгоритмів, призначених для обміну інформацією між пристроями (блоками). Інтерфейси вводу/виводу призначені для зв’язку з ПВВ, наприклад, з клавіатурою, дисплеєм, датчиками, пристроями, які печатають.

 

Принципи побудови мікропроцесорних систем

В основу побудови МПС покладено 3 принципи:

· магістральності

· модульності

· мікро програмного управління.

 

Принцип магістральності визначає характер зв’язку між функціональними блоками МПС – всі блоки з’єднані єдиною системною шиною.

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

Принцип мікропрогрмного управління складається у можливості здійснення елементарних операцій – мікрокоманд (зсувів, пересилок інформації, логічних операцій).

Пам’ять

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

Пам’ять забезпечує зберігання даних та кодів команд програми.

Пам’ять організована у вигляді масиву комірок, кожна з яких має свою адресу та містить байт (8 біт) чи слово (2 байти) інформації. Для звернення до комірки пам’яті, необхідно видати її адресу на ША. Пам’ять складається з 4 типів сегментів по 64 кБайти кожен (не більше). ОЗП включає в себе перші ¾ пам’яті, а ПЗП - останні ¼. Всі комірки пам’яті пронумеровані від 000 до 111.

Структура пам’яті з 8-ми однобайтних комірок

 
 

 

За адресою 000 знаходиться комірка памяті, у якій міститься операнд 5F

Адресація:

Процесор забезпечує доступ до байтів чи до слів памяті.

Розглянемо приклад 1025 . Для запису у память необхідно число записати у 16-річній системі зчислення, тобто 0401. Для цього потребується 2 Байти або 1 слово: старша частина -04, молодша – 01. Дані в памяті зберігаються у зворотній послідовності: молодша частина – за меншим адресом, старша – за більшим.

 
 

 

Сегмент – це область памяті, яка починається з будь-якого адресу кратного 16. Існують 4 основних сегменти: сегмент кодів, сегмент даних, додатковий сегмент даних, стековий сегмент.

Однокристальний 8-разрядний мікропроцесор

Функціональне призначення виводів

 

1. - шина адреси, що забезпечує адресацію пам'яті до 64 кбайт, адресацію портів уведення 256 й 256 портів висновку інформації;

2. - 2-спрямована шина даних, забезпечує обмін інформацією між МП, пам'яттю й переферійними пристроями;

3. DBIN (data bus in) - вихідний сигнал прийому вказує пам'яті й переферійним пристроям що шина даних перебуває в режимі прийому інформації в МП;

4. вихідний сигнал видачі інформації із МП;

5. вхідний сигнал переривання, сприйманий МП після виконання поточної команди;

6. INTE - вихідний сигнал дозволу переривань;

7. HOLD - вхідний сигнал запиту прямого доступу до пам'яті або запиту захоплення шин;

8. HLDA - вихідний сигнал підтвердження;

9. READY - вхідний сигнал готовності, інформує МП що дані із зовнішнього джерела передані на шину даних, якщо "0" те МП перебуває чекаючи;

10. WAIT - вихідний сигнал очікування;

11. RESET - вихідний сигнал скидання в 0 регістра команд і програмного лічильника;

12. SYNC - вихідні синхросигнали визначальний початок машинного циклу;

13. - тактові сигнали.

Склад МП КР 580

- шість 8-бітних регістрів загального призначення (РЗП) B C D E H L, які можуть об’єднуватися у шістнадцяти бітні пари. В них зберігаються дані та проміжні результати;

- ІР - програмний лічильник (вказівник команд) 16-розрядний регістр використовується для зберігання адреси команди, яку необхідно виконати. Після вибірки з пам’яті програми чергового байту команди, вміст ІР збільшується на 1.

- SP - вказівник стеку – 16-ти розрядний регістр, який зберігає адресу останньої зайнятої комірки в області стекової пам’яті;

- РК – регістр команд 8-розрядний – приймає обрану з пам’яті програми команду і зберігає її на протязі циклу;

- СІД – схема інкремент/декремент– дозволяє без участі АЛП додавати або віднімати 1 з змісту регістрів ІР, РЗП чи SP;

- АЛП – використовується для виконання всіх арифметико логічних операцій, зсувів та інш. з двійковими числами;

- акумулятор – 8-розрядний регістр, в якому зберігається один з операндів, а також результат операції;

- ВР, ВА –буферні регістри – виконують допоміжні функції.

АЛП після виконання команд формує признаки результатів у регістр прапорців.

S Z x AC x x P C

sign zero auxil.carry parity carry

S – признак знаку;

Z – признак нуля;

AC- допоміжний перенос;

P – парність;

C – перенос.

- регістр прапорців представляє собою 5 або 6 тригерів, які встановлюються в1 або 0 станв залежності від результату операції, виконаного в АЛП;

- ДШК визначає тип операції та формує сигнали для ПК;

- ПК – пристрій керування – генерує управляючі сигнали для всих блоків схеми;

- М – мультиплексом – обмін даними всередині МП здійснюється по внутрішній 8-бітній шині даних через М, а також поєднує РЗП з системною шиною.

Схема працює наступним чином:

При вмиканні джерела живлення чи при формуванні сигналу RESET вміст ІР встановлюється в 0, і починається машинний цикл вибірки команди з памяті. Вміст комірки памяті за нульовою адресою через буферний регістр даних та внутрішню шину МП надходить до РК, а далі у ДШК. Цей сигнал разом з сигналом синхронізації формує керуючі імпульси для кожної мікро операції.

 

 

Програмна модель МП і8080.

Програмна модель – сукупність програмно-доступних регістрів, тобто тих регістрів, вміст яких можна прочитати чи змінити за допомогою команд. В програмну модель входить: акумулятор, РЗП, регістр флагів, вказівник стеку та вказівник команд.

Регістри загального призначення
  7 B 0
  7 C 0
  7 D 0
  7 E 0
  7 H 0
  7 L 0
  MEMORY
  7 A 0

 

Регістри адреси
15 B 7 C 0 пара В
15 D 7 E 0 пара
15 H 7 L 0 пара
15 PC 0 програмний лічильник
15 SP 0 вказівник стеку
15 F Слово стану МП

 

 

Машинні цикли

Будь-яка команда складається з циклів (1-5).

В МП КР 580 10 типів машинних циклів:

1. вибірка байтів команди (завжди перший);

2. читання з пам’яті;

3. запис у пам’ять;

4. читання з стеку пам’яті;

5. запис у стек;

6. ввід

7. вивід

8. обробка переривання

9. останов

10. обробка переривання при останові.

Для визначення типу машинного циклу у першому стані кожного циклу, на шину даних подається 8-бітний код, який використовується для формування керуючих сигналів.

Код слова стану:

 

1-читання, 0 – запис

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

W0 d1 – признак запису – запис у пам’ять або вивід коду у порт виводу;

STACK d2 – на шину адресу передається адреса із вказівника стеку;

HLTA d3 – підтвердження команди останов;

OUT d4- признак виводу – шана адресу містить адресу порту виводу

M1 d5 – вибірка першого байту команди;

INP d6 – признак вводу – шина адресу містить адресу порта виводу;

MEMR d7 – шина даних використовується для прийому даних з пам’яті.

 

 



Поделиться:


Последнее изменение этой страницы: 2017-02-05; просмотров: 176; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.138.122.4 (0.061 с.)