logo

Главная Система команд x86 Система команд FPU FSIN

Система команд x86

Программирование - Архитектура и система команд микропроцессоров x86
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

FSIN

Вычислить синус

Влияние команды на флаги и форматы команды:

IS

IA

D

Z

O

U

P

*

*

*

 

 

*

*

 

Код

Команда

Описание

Проц.

Пример

D9 FE

FSIN

ST(0) = sin(ST(0))

Intel387

fsin

Описание:

Команда FSIN замещает содержимое ST значением sin(ST).

Значение в ST выражается в радианах и должно лежать в диапазоне |X| < 263.

Если операнд находится вне приемлемого диапазона, то устанавливается флаг C2, и ST остается неизмененным, исключения #IA не возникает. На программисте лежит ответственность за уменьшение операнда до абсолютного значения, меньшего чем 263. Это можно сделать путем вычитания соответствующего целочисленного значения, умноженного на 2p. Исключение #IA возникает, если операнд SNaN, ±∞ или представлен в неподдерживаемом формате.

Флаги C0, C3 регистра SW после выполнения команды неопределены, флаг C1 устанавливается равным 0 в случае возникновения стековой ошибки #IS, а также указывает направление округления в случае возникновения исключения #P (неточный результат): 0 – округление к меньшему, 1 – округление к большему, если C2=1, значение флага C1 неопределено.

Операция:

IF (Значение операнда лежит в пределах допустимого диапазона)

THEN

  C2 = 0;

  ST = sin(ST);

ELSE

  C2 = 1

FI;

Особые ситуации защищенного режима:

#NM, если CR0.EM = 1 или CR0.TS = 1.

Особые ситуации режима реальной адресации:

#NM, если CR0.EM = 1 или CR0.TS = 1.

Особые ситуации режима V86:

#NM, если CR0.EM = 1 или CR0.TS = 1.


Входит в группу команд: Система команд FPU




Все права защищены © Алексей Ровдо, 1994-2023. Перепечатка возможна только по согласованию с владельцем авторских прав. admin@club155.ru

Top.Mail.Ru       Сервер радиолюбителей России - схемы, документация,

 соревнования, дипломы, программы, форумы и многое другое!   схемы новости электроники