Теоретичні відомості У навчальній ЕОМ усі інструкції діляться на дві частини: адресні та безадресні. У безадресних інструкціяї або взагалі не використовуються будь-які операнди (числа), як, наприклад, для інструкції HALT, або, як це є у більшості випадків, у таких інструкціяї однозначно відомо, звідки брати операнди для операції: наприклад, інструкція NOT однозначно працює з акумулятором (інвертує його); так само роблять усі інструкції зсувів (LSL, ASR, ROR та інші); а от інструкції INPUT та OUTPUT працюють не лише з акумулятором, але й з портами вводу (INPUT) та виводу (OUTPUT). Відповідно адресні інструкції для виконання своєї операції потребують операнда, в якості якого може бути будь-яка з 4096 комірок пам’яті. Отже, окрім коду операції, який займає найстарші 4 розряду машинного коду інструкції (від 15-го до 12-го ), решту розрядів займає 12-розрядна адреса комірки пам’яті, значення якої і стане операндом і буде оброблятись у даній інструкції. Інструкції діляться на наступні групи: інструкції звернення до пам’яті (LOAD та STORE); арифметичні інструкції (ADD та SUB); логічні інструкції (AND, OR, XOR та NOT); інструкції вводу/виводу (INPUT та OUTPUT); інструкції керування виконанням програми: інструкція зупинки (HALT); інструкції умовних переходів (JNZ, JZ, JP, JM, JNC та JC); інструкція безумовного переходу (JMP); інструкції зсувів (вліво (Left) та вправо (Right)): інструкції логічного зсуву (LSL та LSR); інструкції арифметичного зсуву (ASL та ASR); інструкції циклічного зсуву (ROL та ROR); інструкції циклічного зсуву через перенос C (RCL та RCR). Хід роботи 2. Програма матиме такий вигляд: У двійкових кодах У мнемонічних кодах