
- •Конспект лекцій
- •1 Представлення інформації в мікро-еом
- •2 Класифікація еом
- •3 Типова структура мікропроцесорних
- •2 Мікропроцесори
- •2.1 Архітектура з трьома шинами
- •3 Архітектура 8-розрядного однокристального
- •3.1 Загальна характеристика однокристального мп серії кр580
- •3.2 Структурна схема мп
- •1 Зчитування коду чи команди даних з пам'яті або зовнішнього пристрою
- •2 Запис даних у пам'ять чи зовнішній пристрій
- •3 Робота в режимі захоплення
- •4 Робота в режимі зупинка
- •5 Обслуговування запитів на переривання
- •6 Початкова установка
- •3 Основи програмування мікропроцесорних
- •3.1 Класифікація команд мікропроцесора
- •3.2 Види адресації
- •3.3 Структура і формати команд мп кр580вм80
- •4 Програмований прістрій вводу-виводу паралельної інформації кр580вв55
- •Література
6 Початкова установка
Протягом усього часу, поки на вході R установлений рівень “1”, всі операції в МП будуть припинені. За цей час обнуляються програмний лічильник, тригер дозволу переривання і внутрішня логіка, зв'язана з формуванням сигналу П.Зх. Отже, перша виконувана команда буде зчитуватися за адресою 0000.
Після початку виконання програми переривання залишаються відключеними. Для відновлення можливості сприйняття запитів переривання в програму необхідно включити команду EI.
3 Основи програмування мікропроцесорних
ПРИСТРОЇВ
3.1 Класифікація команд мікропроцесора
Як уже відзначалося, принциповим достоїнством МП є програмованість. Це означає, що подаючи на вхід МП команди, можна забезпечити потрібну послідовність операцій, тобто реалізацію визначеного алгоритму. Алгоритм розв'язуваної задачі може бути як завгодно складним, необхідно лише, щоб цей алгоритм був розбитий на кроки відповідно до системи команд МП. Тому система команд важлива не тільки з погляду, що МП може робити, але і як виконується алгоритм. Наявність чи відсутність якої-небудь команди або групи команд може істотно вплинути на вибір МП для конкретного застосування.
Класифікація команд МП представлена на рисунку 8.
По числу комірок пам'яті, необхідних для розміщення однієї команди, розрізняють команди довжиною в одне, два чи три слова. Команди довжиною в два чи три слова вимагають для вибірки відповідно два чи три цикли звертання до пам'яті.
У багатьох випадках, зокрема при порівнянні МП із подібною архітектурою, виявляється корисною класифікація команд відповідно до архітектурних характеристик МП.
З функціональної точки зору команди розділяються на три великі групи: передачі, керування й обробки даних. Розглянемо докладно основні команди, застосовувані в МП, користуючись класифікацією по функціональних ознаках. Назви команд позначимо українськими словами, що вказують на зміст виконуваних операцій.
Команди передачі даних забезпечують просте пересилання інформації без виконання яких-небудь операцій обробки. Команди цієї групи поділяються на команди зв'язані зі звертанням до пам'яті, команди зв'язані зі звертанням до регістрів і команди введення та виведення.
До команд зв'язаних зі звертанням до пам'яті відносяться:
ЗАВАНТАЖИТИ (ПРОЧИТАТИ), по якій вміст однієї з комірок пам'яті засилається в регістр;
ЗАПАМ'ЯТАТИ (ЗАПИСАТИ), по якій уміст регістра засилається в комірку пам'яті.
У командах, зв'язаних з пересиланням байта чи слова, повинні вказуватися номер конкретного регістра, адреса комірки пам'яті і, якщо необхідно, номер модуля ЗП.
Команди, зв'язані зі звертанням до регістрів, повинні вказувати номер джерела інформації і номер регістра результату. У цю підгрупу команд передачі даних входять команди:
ЗАВАНТАЖИТИ БЕЗПОСЕРЕДНЬО, по якій у регістр записується константа, зазначена в коді команди;
ПЕРЕСЛАТИ, по якій вміст одного регістра пересилається в іншій.
До команд введення-виведення відносяться:
ВВЕДЕННЯ, по якій уміст пристрою введення засилається у внутрішній регістр МП;
Рисунок 8 - Класифікація команд МП
ВИВЕДЕННЯ, по якій уміст внутрішнього регістра МП (звичайно акумулятора) пересилається в пристрій висновку.
Команди керування, часто називані командами переходу, дозволяють виконувати різні дії у відповідності зі значенням зовнішніх сигналів чи вироблених усередині системи умов. Усі команди керування поділяються на команди безумовного й умовного переходу.
До команд безумовного переходу відносяться:
БЕЗУМОВНИЙ ПЕРЕХІД (БП), по якій у програмний лічильник записується вміст адресного полючи команди БП, тобто забезпечується перехід у програмі за адресою, зазначеному в команді;
БЕЗУМОВНИЙ ПЕРЕХІД З ПОВЕРНЕННЯМ (перехід до підпрограми), по якій у програмний лічильник записується новий уміст (адреса першої команди підпрограми), але на відміну від команди БП у пам'яті зберігається стан програмного лічильника і деяких інших регістрів. При виконанні підпрограми по її останній команді ПОВЕРНЕННЯ відновлюється вміст програмного лічильника і всіх регістрів.
Команди умовного переходу перевіряють стан якого-небудь розряду регістра, флагового тригера чи іншого параметра. Від результату перевірки залежить, буде виконуватися перехід чи ні. Звичайно перехід здійснюється якщо результат перевірки відповідає зазначеній в команді умові. У цю підгрупу команд керування входять:
УМОВНИЙ ПЕРЕХІД (УП) за адресою. У коді команди УП обов'язково вказується умова, що перевіряється, у якості якого в МП використовуються нульове чи ненульове значення результату, позитивний чи негативний знак результату, наявність чи відсутність сигналів переносу, переповнення й ін. При виконанні умови в програмний лічильник записується вміст адресного полю команди УП, тобто забезпечується перехід у програмі за адресою зазначеною в команді. При невиконанні умови керування передається наступній команді програми;
УМОВНИЙ ПЕРЕХІД З ПОВЕРНЕННЯМ, що відрізняється від команди БЕЗУМОВНИЙ ПЕРЕХІД З ПОВЕРНЕННЯМ тим, що перехід до підпрограми відбувається тільки при виконанні зазначеної умови.
Звичайно в систему команд МП включається ще кілька допоміжних команд, що дозволяють керувати станом регістрів чи тригерів умовних переходів, що впливають на виконання, наприклад: УСТАНОВИТИ ПРАПОР, СКИНУТИ ПРАПОР, УСТАНОВИТИ СТАРШИЙ РОЗРЯД АКУМУЛЯТОРА, СКИНУТИ СТАРШИЙ РОЗРЯД АКУМУЛЯТОРА й ін.
Команди обробки даних поділяються на арифметичні і логічні. До арифметичних команд відносяться:
СКЛАСТИ вміст двох регістрів чи регістра і комірки пам'яті;
ВІДНЯТИ з умісту комірки пам'яті чи регістра вміст регістра;
ЗБІЛЬШИТИ НА 1 (ІНКРЕМЕНТ) уміст комірки пам'яті чи регістра (покажчика стека, індексного регістра, акумулятора);
ЗМЕНШИТИ НА 1 (ДЕКРЕМЕНТ) уміст комірки пам'яті чи регістра;
СКЛАСТИ З УРАХУВАННЯМ ПЕРЕНОСУ, по якій виконується додавання з урахуванням стану тригера переносу. Це дозволяє легко організувати обробку чисел великої довжини;
ВІДНЯТИ З ОБЛІКОМ ЗАЙМА;
ЗСУВ вмісту комірки пам'яті чи регістра (звичайно на один розряд).
У підгрупу логічних команд входять команди:
І (ЛОГІЧНЕ ПОМНОЖИТИ), по якій виконується операція кон'юнкції між умістом двох регістрів чи комірки пам'яті і регістра;
ЧИ (ЛОГІЧНО СКЛАСТИ), по якій виконується операція диз'юнкції між умістом двох регістрів чи комірки пам'яті і регістра;
НЕРІВНОЗНАЧНІСТЬ, по якій виробляється порозряде порівняння вмісту двох регістрів чи комірки пам'яті і регістра;
ІНВЕРСІЯ вмісту комірки пам'яті чи регістра.