Команды передачи данных в целочисленном формате

fild источник – загрузка целого числа из памяти на вершину стека сопроцессора.

fist приемник – сохранение целого числа из вершины стека сопроцессора в память. Сохранение целого числа в памяти не сопровождается выталкиванием его из стека, то есть текущая вершина стека сопроцессора не изменяется.

fistp приемник – сохранение целого числа из вершины стека в память. Аналогично сказанному ранее о команде FSTP, последним действием команды является выталкивание числа из стека с одновременным преобразованием его в целое значение.

3. Команды передачи данных в десятичном формате.

fbld источник – загрузка десятичного числа из памяти на вершину стека сопроцессора.

fbstp приемник – сохранение десятичного числа из вершины стека сопроцессора в области памяти. Значение выталкивается из стека после преобразования его в формат десятичного числа.

Для десятичных чисел нет команды сохранения значения в памяти без выталкивания из стека.

Команда обмена вершины регистрового стека st(0)с любым другим регистром стека сопроцессора st(i):

fxch st(i)

Действие команд загрузки fld, fild и fbld можно сравнить с командой push основного процессора. Аналогично ей (push уменьшает значение в регистре sp) команды загрузки сопроцессора перед сохранением значения в регистровом стеке сопроцессора вычитают из содержимого поля ТОР регистра состояния SWR единицу. Это означает, что вершиной стека становится регистр с физическим номером на единицу меньше.

Для наблюдения за состоянием регистров сопроцессора, используется окно Numeric processor. (View – Numeric Processor).

Команды загрузки констант

Основным назначением сопроцессора является поддержка вычислений с плавающей точкой. В математических вычислениях довольно часто встречаются предопределенные константы, и сопроцессор хранит значения некоторых из них.

Для каждой предопределенной константы существует специальная команда, которая производит загрузку ее на вершину регистрового стека сопроцессора:

fldz – загрузка нуля;

fld1 – загрузка единицы;

fldpi – загрузка числа Пи;

fldl2t – загрузка двоичного логарифма десяти;

fldl2e – загрузка двоичного логарифма экспоненты (числа е);

fldlg2 – загрузка десятичного логарифма двойки;

fldln2 – загрузка натурального логарифма двойки.




double arrow
Сейчас читают про: