logo
МПТ_L_к

6.5. Формати команд мікропроцесорів

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

А) ОДНОБАЙТНІ КОМАНДИ. В однобайтових командах байт використовується для задавання коду операції, яка повинна виконуватись. Однобайтні команди – це команди обміну з пам”яттю, арифметичні, логічні, зсуву, операції зі стеком, керування системою переривань. В них використовуються способи неявної, регістрової або неявної регістрової адресації. Тобто, байт команди завжди показує на: код операції, вид адресації, на регістри чи регістрові пари, якщо вони приймають участь в виконанні операції. Тому можна рахувати, що вони кодуються як єдине поле, яке займає в різних командах від 2-х до 8-ми розрядів байту. Це загальне поле називають кодом операції.

При використовуванні в операції регістрів, один або два з них можуть бути показані в 1-му байті команди, при цьому під номер регістру в полі команди відводиться конкретні розряди: три молодших (В2...В0) кодують номер регістра джерела, який містить операнд, а три середніх (В5....В3) - номер регістра приймача, в який засилається результат операції. Прийнято таке кодування номерів регістрів: 000 – регістр В; 001- С; 010 – D; 011 – E; 100 – H; 101 – L; 110 –адреса комірки пам’яті із регістрів Н та L; 111 – A.

Таким чином, наприклад, код 110 показує, що виконується неявна

(косвенная) адресація до пам’яті за допомогою 16 – розрядної адреси, який розміщується в регістрах H, L. В залежності від положення цього коду в команді до відповідної комірки пам’яті буде звертання чи за операндом для його читання, чи для запису результату операції.

Ряд команд передбачають обробку чи передачу чисел подвійної довжини. В цих випадках пари регістрів В та С, чи D та Е, або Н та L об’єднуються в 16-ти розрядні регістри, які мають відповідно номери: 00, 01 та 10. Під цими намерами регістрових пар в командах відводяться розряди: (В2 та В1) - для регістра джерела, (В5 та В4) – для регістра приймача, а розряди В0 та В3 використовують як показчик коду операції.