- •2 Модуль
- •3 Модуль
- •4 Модуль
- •1 Вузли обчислювальної техніки та мікропроцесорних систем.
- •2 Програмування мікропроцесорів фірми Intel.
- •1 Модуль
- •1 Обчислювальні та мікропроцесорні системи
- •1.1 Основні визначення
- •1.2 Принципи побудови та функціонування обчислювальних систем
- •1.2.1 Архітектура обчислювальних систем
- •1.2.2 Класифікація комп’ютерів
- •1.3 Принципи побудови та функціонування мпс
- •1.4 Функціонування обчислювального пристрою
- •2 Операції над даними в обчислювальних системах
- •2.1 Подання даних в обчислювальних системах
- •2.2 Подання даних у кодах
- •2.3 Порозрядні операції над даними
- •3 Цифрові автомати
- •3.1 Визначення цифрових автоматів
- •3.2 Синтез логічних схем
- •3.3 Розробка ца
- •4 Типові пристрої обчислювальних систем (Для самостійного вивчення)
- •4.1 Суматори
- •4.2 Цифрові компаратори
- •4.3 Арифметико-логічний пристрій
- •4.4 Програмовні логічні інтегральні схеми (пліс)
- •5 Принципи побудування запам’ятовувальних пристроїв мпс з заданою організацією
- •5.1 Запам’ятовувальні пристрої мпс та їх класифікація
- •5.2 Постійні запам’ятовувальні пристрої
- •5.3 Оперативні запам’ятовувальні пристрої
- •5.4 Умовне позначення мікросхем пам’яті
- •5.5 Побудування модуля запам’ятовувального пристрою мпс з заданою організацією
- •6 Інтерфейс
- •6.1 Організація інтерфейсів
- •6.2 Організація послідовних інтерфейсів введення-виведення
- •7 Мікропроцесори
- •7.1 Архітектура мікропроцесорів
- •7.2.1 Організація 8-розрядних мікропроцесорів (Для самостійного вивчення)
- •Інтерпретація даних у мп к580вм80а
- •Програмна модель мп к580вм80а
- •Формат команд мп к580вм80а
- •Способи адресації операндів мп к580вм80а
- •Мікропроцесорна система кр580
- •Стекова пам’ять
- •Функціонування мпс
- •Виконання команди пересилання з регістра с у регістр в
- •Робота мпс при виконанні команди in n введення даних з порту n в акумулятор мп а
- •Реакція мпс на виконання команди зупину
- •Робота мпс у режимі переривань
- •7.2.2 Організація 16-розрядних мікропроцесорів
- •7.2.3 Організація 32-розрядних мікропроцесорів (Для поглибленого вивчення)
- •Співпроцесори мп і80386
- •7.3 Продуктивність мікропроцесорів та її оцінювання
- •7.3.1 Технічна продуктивність мікропроцесора
- •7.3.2 Реальна продуктивність мікропроцесора
- •7.3.3 Архітектура сучасних мікропроцесорів
- •8 Використання мп фірми intel у
- •Процесори Athlon та Duron фірми amd
- •Список рекомендованої літератури до 1 модулю
- •2 Модуль
- •9 Програмування мікропроцесорів фірми intel
- •9.1 Сегментування пам’яті мікропроцесорами
- •9.2 Способи адресування операндів мп фірми Intel Регістрове адресування операндів
- •Безпосереднє адресування операндів
- •Пряме адресування
- •Непряме регістрове адресування
- •Пряме адресування з індексуванням
- •Адресування за базою з індексуванням
- •Непряме адресування з масштабуванням
- •9.3 Мова програмування Асемблер-86
- •9.3.1 Формат команди
- •9.3.2 Команди пересилань
- •9.3.3 Команди перетворення даних мови Асемблер-86
- •9.3.4 Команди умовних та безумовних переходів
- •9.3.5 Команди організації циклів
- •9.4 Створення програм на мові Асемблер-86
- •9.4.1 Лінійні програми
- •9.4.2 Розгалужені програми
- •9.4.3 Циклічні програми
- •10 Програмна реалізація вузлів телекомунікаційного обладнання на мові асемблер-86
- •10.1 Способи реалізації алгоритмів
- •10.2 Розробка апаратно-програмних комплексів
- •10.3 Приклади реалізації простих вузлів телекомунікацій
- •10.3.1 Ініціалізація послідовного асинхронного адаптера rs-232-c
- •10.3.2 Фрагмент програми передавання даних через асинхронний адаптер rs-232-c
- •10.3.3 Фрагмент програми приймання даних через асинхронний адаптер rs-232-c
- •10.3.4 Приклад програми ініціалізації rs-232-c та введення-виведення даних, написаної у програмному середовищі turbo assembler (tasm)
- •10.3.5 Програмна реалізація генератора імпульсних послідовностей
- •10.3.6 Програмне вимірювання періоду імпульсної послідовності det
- •10.3.7 Програмна реалізація мультиплексора
- •Список рекомендованої літератури до 2 модулю
- •3 Модуль
- •11 Мікропроцесорні системи на універсальних мп фірми motorola
- •11.2 Побудова мпс на 16-розрядних мікропроцесорах фірми Motorola
- •11.2.1 Підсистема центрального процесорного елемента mc68000
- •11.2.2 Розподіл адресного простору мпс
- •11.2.3 Організація підсистеми пам’яті
- •11.2.4 Організація підсистем введення-виведення
- •11.4 Побудова мпс на 32-розрядних мікропроцесорах фірми Motorola
- •11.4.1 Підсистема центрального процесорного елемента
- •11.4.2 Розподіл адресного простору мпс
- •11.4.3 Організація підсистеми пам’яті мпс
- •11.4.4 Організація підсистеми введення/виведення
- •11.4.5 Підключення співпроцесора
- •12 Програмування універсальних мп
- •12.1 Мова Асемблер програмування мп фірми Motorola
- •Непряма регістрова адресація з постіндексуванням
- •Непряма регістрова адресація з преіндексуванням
- •Непряма відносна адресація з індексуванням
- •12.2 Система команд мп мс680х0 (Для самостійного вивчення)
- •12.2.1 Команди пересилання
- •12.2.2 Команди арифметичних операцій
- •12.2.3 Команди логічних операцій
- •12.2.4 Команди зсувів
- •12.2.5 Команди безумовних переходів
- •12.2.6 Команди умовних переходів
- •12.2.7 Команди організації програмних циклів
- •12.2.8 Команди звернення до підпрограм
- •12.3 Побудова програм з різною структурою на мові Асемблер мп фірми Motorola
- •12.3.1 Лінійні програми
- •12.3.2 Розгалужені та циклічні програми. Підпрограми
- •12.4 Створення програмного забезпечення мпс на мп фірми Motorola
- •Список рекомендованої літератури до 3 модулю
Способи адресації операндів мп к580вм80а
Для можливості виконання команди у ній, крім коду операції, слід указати адреси операндів (джерела) та куди розміщується результат операції (приймач). Під способами адресації розуміють способи, використовувані для указання джерел та приймачів.
Регістрова адресація. Команди з регістровою адресацією є самими короткими за використанням та довжиною, тому що потребують звернення до пам’яті тільки за кодом операції та трибітовими адресами одного з регістрів. Наведемо приклади команд з регістровою адресацією.
Код (номер) регістра В становить 000, код регістра Е є 011, код регістра А — 111; код операції пересилання MOV — 01, а команди віднімання SUB — 10. На рис. 7.5 приведені приклади команд з регістровою адресацією.
Мнемоніка
команди
Машинний
код команди
Виконувана
операція
MOV
B, E
01
000 011
D ← (E)
SUB
B
10
000 000
A ← (A) — (B)
Рисунок 7.5 — Приклади команд з регістровою адресацією
При розгляданні команди SUB слід мати на увазі, що за умовчанням вона у якості приймача використовує тільки акумулятор, обидві команди однобайтові.
Під мнемонікою команди розуміють скорочене її позначення, яке поліпшує запам’ятовування команди. Наведені команди написані мовою Асемблера-80, їх мнемоніка є початками слів або абревіатурою англійських слів, які висловлюють назву операції, виконувану командою. Так команда MOV В, С, від move — рухати, означає пересилання вмісту регістра — джерела С до регістра приймача В. Команда SUB C від substraction — віднімання — виконує операцію віднімання від акумулятора А вмісту регістра С, результат пересилається до акумулятора А.
Безпосередня адресація. При такому способі адресації операнди задаються безпосередньо у команді після коду операції у другому або другому та третьому байтах. На рис. 7.6 показані приклади команд з безпосередньою адресацією.
-
Мнемоніка
команди
Машинний
код команди
Виконувана
операція
MVI A, 13H
0011111000010011
A ← (A) + 13H
SUI 05Н
1101011000000101
A ← (A) — 05H
LXI D, A565H
000100010110010110100101
DE ← A565Н
Рисунок 7.6 — Приклади команд з безпосередньою адресацією
Команда MVI A, 13H є двобайтова, перший байт вміщує код операції та код регістра, з яким виконується операція: 00R110, для акумулятора А цей код становить 111; другий байт вміщує безпосереднє дане, яке треба завантажити у регістр А: 00010011Н.
Команда SUI 05Н також є двобайтова, код операції становить 11010110, код регістра, від якого віднімається дане, не вказується, тому що за умовчанням це завжди акумулятор; у другому байті вміщується дане, яке безпосередньо вказується у команді — число 00000101.
Команда LXI D, A565H є трибайтовою, у першому байті вміщено код операції 00010001; у другому та третьому байтах зберігається безпосередньо задане у команді число 0110010110100101.
Видно, що при
(В2) = 65Н (В3) = А5Н
зберіганні двобайтового даного у пам’яті дотримується принцип: старший байт зберігається за старшою адресою, а молодший — за молодшою. Після виконання команди у молодший регістр Е регістрової пари DE буде завантажено байт В2, а у старший D — байт В3: (DE) = А565Н. Пряма адресація передбачає указання у команді прямо адреси операнда, які записуються у другому та третьому байтах команди.
Команда LDА 1160Н завантажує акумулятор з комірки пам’яті з двобайтовою адресою 1160Н.
Непряма адресація. При непрямій адресації адреса операнда розміщується у будь-якій регістровій парі РЗП, причому вказується старший регістр пари. Команда LDАХ В завантажує у акумулятор вміст комірки пам’яті, адресу якої вміщує регістрова пара ВС. Непряма адресація дає нагоду ефективного опрацьовування елементів масивів, оскільки для переходу до наступного елемента достатньо наростити на одиницю адресу попереднього; для цього потрібно додати одиницю до вмісту регістрової пари.
Слід відмітити, що таблиці системи команд МП К580ВМ80А мови програмування Асемблер-80 є у багатьох довідниках та підручниках по мікропроцесорах. Вони вміщують повний опис та машинні коди команд.
8-розрядні мікропроцесори зараз не використовуються у новій апаратурі через те, що з’явились нові, більш досконалі моделі. Знання системи команд мови програмування Асемблер-80 теж не є обов’язковим. Що стосується машинних кодів команд, то певний інтерес уявляє сам принцип їх складання, самі ж коди можна інтерпретувати при аналізі програми, яка розташована у пам’яті, але текст якої є невідомий.
Розглянута далі МПС на базі МПК КР580 також є цікавою тільки з точки зору принципів її побудови, взаємодії підсистем, які її складають, та прикладів можливого застосування у телекомунікаціях. Доцільно також на простих прикладах показати виконання окремих команд у МПС.