Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ASKS_lektsii_chast_1_1.doc
Скачиваний:
11
Добавлен:
16.11.2019
Размер:
2.04 Mб
Скачать

Ожидание

1.Все команды FPU x87, за исключением нескольких команд управления, реализуют неявную операцию ожидания (наподобие команд WAIT/FWAIT), – т.н. ожидающие команды.

Назначение – ____________ __ __________________ незамаскированные особые случаи FPU ________ выполнением заданной операции.

2.Команды управления FPU имеют два варианта:

  • с ожиданием (префикс «__»);

  • без ожидания (префикс «___»).

Пример: FSTSW/FNSTSW.

Команды «без ожидания» позволяют программному обеспечению перед обработкой особого случая сохранить информацию о состоянии или произвести сброс/реинициализацию FPU без обработки особого случая.

Особенности выполнения бинарных операций

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

Операция

Обычные команды

FSUB ST(0), ST(i)

ST(0) ← ST(0) − ST(i)

FSUB ST(i), ST(0)

ST(i) ← ST(i) − ST(0)

FSUBR ST(0), ST(i)

ST(0) ← ST(i) − ST(0)

FSUBR ST(i), ST(0)

ST(i) ← ST(0) − ST(i)

«POP»-модификации команд*

FSUBP ST(i), ST(0)

ST(i) ← ST(i) − ST(0), извлечение из стека

FSUBP

ST(1) ← ST(1) − ST(0), извлечение из стека

*существуют для команд сложения, вычитания, умножения и деления

Код команды

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

Операция

D8 /0

FADD m32fp

ST(0) ← m32fp + ST(0)

DC /0

FADD m64fp

ST(0) ← m64fp + ST(0)

D8 C0+i

FADD ST(0), ST(i)

ST(0) ← ST(0) + ST(i)

DC C0+i

FADD ST(i), ST(0)

ST(i) ← ST(i) + ST(0)

DE C0+i

FADDP ST(i), ST(0)

ST(i) ← ST(0) + ST(i), извлечение из стека

DE C1

FADDP

ST(1) ← ST(0) + ST(1), извлечение из стека

DA /0

FIADD m32int

ST(0) ← m32int + ST(0)

DE /0

FIADD m16int

ST(0) ← m16int+o ST(0)

Пример функционирования регистрового стека fpu x87

; вычислить значение(5.6 x 2.4) + (3.8 x 10.3)

_____ value1 ;(a) value1 = 5.6

______ value2 ;(b) value2 = 2.4

_____ value3 ; value3 = 3.8

______ value4 ;(c)value4 = 10.3

______ ST(1) ;(d)

Регистр состояния (sr, Status Register) fpu x87

Хранит слово соcтояния (SW, Status Word).

SW отображает текущее состояние FPU посредством следующих элементов:

  • флаг занятости FPU;

  • указатель вершины стека FPU (TOP);

  • флаги кодов условия;

  • общий флаг ошибки;

  • флаг ошибки операций стека FPU;

  • флаги отдельных особых случаев.

Флаги устанавливаются автоматически в зависимости от результата операции.

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