Система команд МП серії КР580ВМ80 містить команди трьох форматів: однобайтні, двобайтні і трьохбайтні.
Уміст першого байта вказує на формат команди, код операції, вид адресації і регістри чи регістрові пари, якщо вони беруть участь у виконанні операції. При цьому неможливо вказати конкретні розряди, що виділяються під перші три з зазначених складових команди, тому що вони можуть знаходитися в будь-яких розрядах команди. Але, незважаючи на це, будемо вважати що вони кодуються як одне поле, що називається полем коду операції. Варіанти форматів першого байта команди приведені на рисунку 9.
Якщо у виконанні операції беруть участь регістри, то один чи два з них можуть бути зазначені в першому байті команди. При цьому під номери регістрів у поле команди виділяються цілком визначені розряди: три молодших розряди (b2 - b0) кодують номер регістра джерела, що містить операнд, а три середніх (b5 - b3) - номер регістра-приймача, у який засилається результат операції. У тих випадках, коли обоє чи один з цих регістрів не беруть участь у виконанні операції, відповідні розряди використовуються під код операції.
Прийнято наступне кодування регістрів:
000 - регістр B, 100 - регістр Н,
001 - регістр C, 101 - регістр L,
010 - регістр D, 110 - комірка пам'яті,
011 - регістр Е, 111 - акумулятор А.
Код 100 є ознакою непрямої адресації до пам'яті за допомогою 16-розрядної адреси, розміщеної в регістрах Н и L. У залежності від розташування цього коду в команді, звертання до відповідної комірки пам'яті виробляється або за операндом, або для запису результатів операції.
Ряд команд МП передбачає обробку або передачу чисел подвійної довжини. У цих випадках пари регістрів В и С, D і Е чи Н и L поєднуються в 16-розрядні регістри, що мають номери 00, 01 і 10 відповідно. Під номери регістрових пар у командах виділяються розряди b2і b1 (регістр-джерело), b5 і b4 (регістр-приймач), а розряди b0 і b3 використовуються для вказівки коду операції.
До двобайтних команд у МП відносяться команди з безпосередньою адресацією і команди введення-виведення. Відповідно другий байт команди цієї групи містить 8-розрядний операнд чи 8-розрядну адресу пристрою введення чи виведення.
У трьохбайтних командах другий і третій байти містять 16-розрядні адреси (у командах із прямою адресацією) чи 16-розрядні операнди (у командах завантаження регістрових пар і покажчика стека).
Після виконання кожної операції а АЛУ виробляється п'ять ознак, значення яких можуть впливати на виконання наступних команд обробки інформації й умовної передачі керування. Однак варто мати через, що різні команди по-різному впливають на окремі ознаки.
Для зручності збереження і відновлення стану МП під час переривань і переходу до підпрограм усі зазначені ознаки зберігаються в спеціальному регістрі - регістрі ознак. Розташування ознак у розрядах регістра приведено в таблиці.
D7
D6
D5
D4
D3
D2
D1
D0
S
Z
AC
P
CY
де S - ознака "знака" (приймає значення старшого розряду результату);
Z - ознака нульового результату;
АС - ознака допоміжного переносу (якщо є перенос між тетрадами байта, то АС=1, інакше АС=0;
Р - ознака парності результату (якщо число одиниць у байті результату парне, те Р=1, інакше Р=0);
С - ознака чи переносу займа (якщо при виконанні команди виник перенос зі старшого чи розряду позики в старший розряд то С=1, інакше С=0).
Примітка: Для команд логічного множення ознака допоміжного переносу АС приймає значення четвертого розряду результату.
Цілком система команд МП серії КР580ВМ80 приведена в додатку до учбового посібника "Мікропроцесори і мікропроцесорні системи". Там же для кожної команди вказується як, після її виконання, змінюється значення кожної ознаки: установлюється відповідно до результату операції (+), не змінюється (-), скидається в нуль (0) чи встановлюється в одиницю (1).
У загальному випадку команда повинна містити наступну інформацію:
- код операції, що вказує операцію, що повинний виконати МП;
- адреси двох операндів ( що складаються, або віднімаються і т.д.). Якщо який-небудь з операндів є константою, то замість його адреси в команді може бути задане значення самого операнда. Однак ця обставина повинна бути відображена в коді операції, що б МП використовував відповідну частину команди з зазначеним її призначення;
- адреса комірки пам'яті в який повинний бути поміщений результат операції;
- адреса наступної команди.
Таким чином команда в загальному випадку є чотирьохадресною. Однак, така структура команд приводить до більш довгого формату команд, що, у свою чергу, сполучено з більш складним процесом їхньої обробки і структурою процесора. Тому, у МП техніці найбільше поширення одержали безадресні й одноадресні команди, що дозволяють побудувати простий процесор. Однак, при виконанні складних операцій знаходять застосування різні формати команд.
У системі команд МП серії 580 маються однобайтні, двобайтні і трьохбайтні команди.
Інформація про спосіб адресації виконуваної команди міститься в коді операції першого байта команди.
Для прискорення обчислень деякі операнди зберігаються в блоці РОН. Команди, що працюють з цими операндами, використовують укорочені адресні коди (регістрову адресацію).
Ці команди дозволяють виключити порівняно довгий цикл звертання до ОЗП і тим самим істотно підвищити швидкість виконання операцій. У зв'язку з обмеженою розрядністю РОН і при роботі з великим масивом даних, використовуються інші методи адресації, що дозволяють звертатися до операндів, розташованим у зовнішній стосовно МП пам'яті. Найбільш розповсюдженою є непряма регістрова адресація, що використовує регістрову пару HL.