Разделы:


Best links:

Система команд арифметического процессора

Основные вычислительные команды. Включают в себя различные арифметические команды и команды сравнения.

Элементарные арифметические команды. Эти команды (табл. 2.12)

  Таблица 2.12

Мнемокод команды

Выполняемые действия

FADD

ST(0) + ST(1) -> ST(0)

FSUB

ST(0) - ST(1) -> ST(0)

FSUBR

ST(1) - ST(0) -> ST(0)

FMUL

ST(0) x ST(1) -> ST(0)

FDIV

ST(0) / ST(1) -> ST(0)

FDIVR

ST(1) / ST(0) -> ST(0)

выполняют четыре арифметических действия над операндами, размещенными в двух верхних элементах стека ST(0) и ST(1) с занесением результата в ST(0). В обычных операциях сложения FADD, вычитания FSUB, умножения FMUL и деления FDIV первый операнд берется из вершины стека ST(0), а второй из следующего элемента ST(1). Поскольку результат вычитания и деления зависит от порядка следования операндов, введены так называемые обратные операции вычитания FSUBR и деления FDIVR, которые меняют операнды местами. Для обеспечения большей гибкости при выполнении арифметических действий введены арифметические команды с расширенными возможностями (табл. 2.13). При использовании этих команд один операнд должен находиться в вершине стека, а второй - в произвольном регистре ST(i)или в памяти. В последнем случае операнд может быть представлен только в двух форматах КВФ и ДВФ.

     Таблица 2.13

Мнемокод команды

(а)

(б)

(в)

     FADD

     FADDP

     FIADD

     FSUB

     FSUBP

     FISUB

     FSUBR

     FSUBRP

     FISUBR

     FMUL

     FMULP

     FIMUL

     FDIV

     FDIVP

     FIDIV

     FDIVR

     FDIVRP

     FIDIVR

Результат операции может быть размещен в произвольном регистре ST(i). Возможности размещения второго операнда и результата различны для мнемокодов команд, представленных в различных столбцах (а, б, в табл. 2.13).

предыдущаяследующая