Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
evuzly_001_2011.doc
Скачиваний:
0
Добавлен:
16.01.2020
Размер:
19.92 Mб
Скачать

6.2. Класифікація команд мікропроцесора. Види адресації. Структура і формат команд мікропроцесора

Принципіальна перевага мікропроцесора – програмованість – на вхід мікропроцесора подаються команди, він виконує потрібну послідовність операцій, тобто реалізує певний алгоритм. Алгоритм може бути як завгодно складним, але він повинен бути розбитим на кроки у відповідності із системою команд даного мікропроцесора. Тому система команд важлива саме з точки зору виконання алгоритму. Кожна команда має свій код.

Команди передачі даних

– забезпечують просте пересилання даних без виконання жодних операцій.

А) команди із звернення до МЕМ;

б) команди із зверненням до RG;

в) команди із звернення до I/O.

а) –ЗАВАНТАЖИТИ (ПРОЧИТАТИ) вміст однієї із комірок завантажується в RG;

- ЗАПАМ’ЯТАТИ (ЗАПИСАТИ) – вміст RG в комірку МЕМ. Тут вказується номер RG, адреса комірки (і/або номер модуля МЕМ).

б ) – ПЕРЕСЛАТИ вміст одного RG пересилається в інший;

Рис. 6.4. Класифікація команд мікропроцесора

– БЕЗПОСЕРЕДНЬО ЗАВАНТАЖИТИ – в RG записується const,вказана в коді команди (дуже часто для встановлення RG в "0" або "1"). Команда має: номер джерела інформації, номер RG результату;

в) – ВВІД – вміст пристрою вводу засилається у RG мікропроцесора;

- ВИВІД – вміст RG мікропроцесора (найчастіше акумулятор) пересилається в пристрій виводу.

Ці команди повинні іти за командами перемикання ПВ/В в режим приймання/пересилання інформації.

Команди керування

(команди переходу) – для виконання дій у відповідності із значеннями зовнішніх сигналів або внутрішніх умов. Поділ на команди безумовного переходу (БЗ) та умовного переходу (УП).

БП: - БП – в програмі лічильника записується вміст адресного поля команди БП, тобто забезпечується перехід в програмі до адреси, вказаній в команді;

  • ПРОПУСТИТИ – пропускається наступна команда ;

  • БП з поверненням (перехід до підпрограми) – в програмі в лічильник записується адреса першої команди підпрограми, але зберігається попередній стан програми лічильника і деяких RG. Після виконання підпрограми відновлюється вміст програми лічильника і RG.

Команди УП перевіряють стан певного розряду певного RG, тригера прапорців, або якогось іншого параметра. Від результату перевірки залежить чи буде виконуватись перехід. Як правило УП виконується при виконанні умови.

  • УП на адресу: в коді команди УП обов’язково вказується умова переходу. Це, як правило, "0" або не"0" результату; "+", "-" результату; наявність/відсутність сигналів переносу, переповнення і т.д. При виконані умови в програмі лічильника записується адреса, вказана в команді переходу. При невиконанні умови відбувається перехід до наступної команди.

  • УП з поверненням – перехід до підпрограми відбувається тільки при виконанні вказаної умови;

  • УМОВНО ПРОПУСТИТИ – при виконанні вказаної умови пропускається наступна команда;

  • ПРОПУСТИТИ ЗА ПРАПОРЦЕМ – для організації взаємодії з ПВ/В. ця команда перевіряє стан RG прапорців.

  • ПОРІВНЯТИ/ПРОПУСТИТИ – порівнюються стани двох RG у випадку рівності наступна команда пропускається;

  • ЦИКЛ- вміст певного RG або комірки МЕМ збільшується або зменшується на "1" і якщо він = 0, то пропускається наступна команда.

Є ще ряд додаткових команд, які дозволяють керувати станами RG або Ж,які впливають на виконання УП, наприклад:"ВСТАНОВИТИ ПРАПОРЕЦЬ", "ЗКИНУТИ ПРАПОРЕЦЬ", "ВСТАНОВИТИ СТАРШИЙ РОЗРЯД АКУМУМЯТОРА", "ЗКИНУТИ СТАРШИЙ РОЗРЯД АКУМУРЯТОРА".

Команди обробки даних

- арифметичні; -логічні.

Арифметичні:

  • ДОДАТИ – вміст двох RG, або RG і комірки МЕМ;

  • ВІДНЯТИ - вміст двох RG, або RG і комірки МЕМ;

  • ЗБІЛЬШИТИ на "1" (ІНКРЕМЕНТ) – вміст комірки МЕМ або RG, наприклад вказівника стену,акумулятора, індексного RG;

  • ЗМЕНШИТИ на "1" (ДЕКРЕМЕНТ) - вміст комірки МЕМ або RG, наприклад вказівника стену,акумурятора, індексного RG;

  • ДОДАТИ із ВРАХУВАННЯМ ПЕРЕНОСУ – для обробки чисел великої довжини;

  • ВІДНЯТИ із ВРАХУВАННЯМ ЗАПОЗИЧЕННЯ - для обробки чисел великої довжини;

  • ЗСУВ – вмісту RG або комірки МЕМ(як правило на один розряд).

Логічні:

  • І (ЛОГІЧНО ПОМНОЖИТИ) -"^" вмісту двох RG, або комірки МЕМ і RG;

  • АБО (ЛОГІЧНО ДОДАТИ) -" " вмісту двох RG, або комірки МЕМ і RG;

  • НЕРІВНОЗНАЧНІСТЬ – порозрядне порівняння вмісту двох RG, або комірки МЕМ і RG;

  • ІНВЕРСІЯ - вмісту двох RG, або комірки МЕМ і RG;

Види адресації

Можливості адресації суттєво з двох причин:
  1. Великий об’єм пам’яті потребує великої довжини адреси n – розрядна адреса→пам'ять 2 n слів.

Типові восьми розрядні. 256 комірок МЕМ, що дуже мало.

Звернення до МЕМ дуже часто зустрічаються, тому дуже важливо оптимальність.

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

Сторінкова організація МЕМ – об’єм МЕМ при n – розрядній адресі(восьми розрядні) комірок (256 слів). Розмір сторінки повинен бути таким, щоб програмні модулі і підпрограми поміщались на одній сторінці, тому що зв'язок між сторінками досить складний.

Для узгодження адресного поля малої розрядності з МЕМ великого об’єму,для вирішення "сторінкової " проблеми в мікропроцесорі використовуються різні види адресації.

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

В адресному полі команди розміщається адреса комірки на сторінці і для переходу на нову сторінку її номер повинен встановлюватись за допомогою спеціальної команди.

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

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

Пряма адресація з використанням подвійних слів, якщо потрібно, то і потрійних. Розширена адресація.

Адресація відносно програмного лічильника. Адресне поле команди – ціле із знаком - , яке додається до вмісту програмного лічильника. Ця відносна адресація створює плаваючу сторінку і спрощує переміщення програм у МЕМ.

Адресація відносно індексного RG – сума індексного RG і адресного поля команди. Індексний RG завантажується спеціальними командами.

Непряма адресація – в адресному полі команди вказується адреса на поточній сторінці, за якою зберігається адреса для виконання. В полі команди потрібен додатковий розряд – признак неправильної адресації.

Стекова адресація – використовується чергова комірка стекової МЕМ.

Структура і формати команд

Всі команди мікропроцесора мають поля, які визначать тип команди, її довжину. В командах звернення до МЕМ можуть бути передбачені поля, визначають адресу комірки, номер RG – джерело інформації і RG результату, номера індексного RG, признак непрямої адресації. В командах звернення до RG – номер, RG – джерело інформації і RG результату.

Команди зміни вмісту RG – три поля

Тип

команди

Код

операції

Номер

RG

Команди виконання операцій над вмістом RG

Тип

команди

Код

операції

RG 1

RG 2

Команди, зв’язані із зверненням до МЕМ

Тип

команди

Код

операції

Вид

адресації

Номер

RG

ADR

Команди безпосередньої адресації

Тип

команди

Код

операції

Номер

RG

Константа


Мови програмування

Всі команди в мікропроцесорі в двох кодах. Але програмувати дуже важко. Тому при програмуванні використовуються символічні зображення всіх полів команд. Машинні коди, мова асемблера, складні програми – мови вищого рівня ПАСКАЛЬ. Спеціальні програми – транслятори.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]