Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
kratkie_otvety_ekzamen_CP_2011-12.docx
Скачиваний:
19
Добавлен:
14.04.2019
Размер:
132.13 Кб
Скачать

Команды ввода-вывода

Команда ввода IN и команда вывода OUT допускают работу как с байтами, так и со словами. Команда IN загружает данные из задан­ного порта в аккумулятор, а команда OUT выполняет передачу из аккумулятора в порт. Для портов ввода-вывода в диапазоне 00-FF можно использовать прямую укороченную адресацию, а остальные порты в диапазоне 100-FFFF можно адресовать только косвенно через регистр DX.

Формат команд:

In ac,port out port,ac (прямая укороченная адресация)

In ac,dx out dx,ac (косвенная адресация) команды арифметических операций

Процессор 8086 имеет широкий набор команд, реализующих арифметические операции, что позволяет применять его в сложных системах обработки данных.

Арифметические операции выполняются над целыми числами четы­рех типов: беззнаковыми двоичными, знаковыми двоичными, упакован­ными десятичными и неупакованными десятичными.  Длина чисел может быть 8 или 16 бит.

Диапазоны чисел:

беззнаковое 8-битное: 0 - 255,

беззнаковое 16-битное: 0 - 65535,

знаковое 8-битное: -128 - +127,

знаковое 16-битное: -32768 - +32767.

Команды арифметических операций влияют на состояние флажков OF, SF, ZF, AF, PF и CF.

Одни и те же команды сложения и вычитания могут использо­ваться для операций как над беззнаковыми, так и знаковыми числа­ми. Контроль над типами чисел должен выполнять сам программист.

Команды сложения Команда add

Команда ADD позволяет производить сложение 8- или 16-битовых двоичных чисел в режиме регистр-регистр, регистр-память и память­-регистр, причем адресация памяти осуществляется в любом допусти­мом режиме. Общее представление команды имеет вид ADD dst, src

т.е. первый  операнд  складывается со вторым и результат операции замещает первый операнд.

Формат команды:

ADD mem/reg1,mem/reg2

ADD mem/reg,data

Команда ADC

Команда ADC выполняет сложение с переносом: в отличие от команды ADD в операции сложения участвует флажок CF, значение которого прибавляется к младшему биту результата сложения операн­дов.

Формат команды:

ADC mem/reg1,mem/reg2

ADC mem/reg,data

Команда INC

Команда INC позволяет увеличить на 1 содержимое любого обще­го регистра или ячейки памяти.

Формат команды: INC mem/reg

КОМАНДЫ ВЫЧИТАНИЯ

Команда SUB позволяет производить вычитание 8- или 16-битных двоичных чисел. Общее представление команды имеет вид

SUB dst, src

т.е. второй операнд вычитается из первого  и  результат  операции замещает первый операнд.

Формат команды:

SUB mem/reg1,mem/reg2

SUB mem/reg,data

Команда SBB

Команда SBB выполняет вычитание с переносом: в отличие от команды SUB в операции вычитания участвует флажок CF, значение которого вычитается из младшего бита результата вычитания операн­дов.

Формат команды:

SBB mem/reg1,mem/reg2

SBB mem/reg,data

Команда DEC

Команда DEC позволяет уменьшить на 1 содержимое любого обще­го регистра или ячейки памяти.

Формат команды:

DEC mem/reg

Команда NEG

Команда NEG изменяет знак числа, находящегося в регистре или ячейке памяти, на противоположный.

Формат команды:

NEG mem/reg

КОМАНДА СРАВНЕНИЯ

Команда сравнения CMP выполняет вычитание второго операнда из первого, но нигде не запоминает результат операции и влияет только на состояние флажков.

Формат команды:

CMP mem/reg1,mem/reg2

CMP mem/reg,data

КОМАНДЫ УМНОЖЕНИЯ

Микропроцессор 8086 имеет две команды умножения: для беззна­ковых и для знаковых двоичных чисел. Умножение десятичных чисел требует использования специальных команд коррекции, которые будут рассматриваться позднее.

Команда MUL

Команда умножения беззнаковых целых чисел MUL выполняет умножение адресуемого операнда на содержимое аккумулятора. Общее представление команды имеет вид MUL src.

При операции над байтами функции аккумулятора выполняет регистр AL, а 16-битный результат операции помещается в регистр AX. При операции над словами функции аккумулятора выполняет регистр AX, а произведение длиной 32 бита формируется в регистрах DX (старшее слово) и AX (младшее слово).

Формат команды:

MUL reg

MUL mem

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