Система команд x86 |
|
Программирование - Архитектура и система команд микропроцессоров x86 |
FCOS
Влияние команды на флаги и форматы команды:
* |
* |
* |
|
|
* |
* |
D9 FF |
FCOS |
ST(0) = COS(ST(0)) |
Intel387 |
fcos |
Описание:
Команда FCOS замещает содержимое ST значением .
Значение в ST выражается в радианах и должно лежать в диапазоне $(|X| < 2^{63}$). На программисте лежит ответственность за уменьшение операнда до абсолютного значения, меньшего чем $(2^{63}$). Это можно сделать путем вычитания соответствующего целочисленного значения, умноженного на .
Если операнд находится вне приемлемого диапазона, то устанавливается флаг C2 регистра SW, а ST остается неизмененным, при этом исключения #IA не возникает.
Исключение #IA возникает, если операнд SNaN, или представлен в неподдерживаемом формате.
Флаги C0, C3 регистра SW после выполнения команды неопределены. Флаг C1 устанавливается равным 0 в случае возникновения стековой ошибки #IS, а также указывает направление округления в случае возникновения исключения #P (неточный результат) (C1 = 0 – округление к меньшему, C1 = 1 – округление к большему). Если C2 = 1, то значение флага C1 неопределено.
Операция:
IF (Операнды не выходят за рамки допустимого диапазона)
THEN
C2 = 0;
ST = cos(ST);
ELSE
C2 = 1;
FI;
Все права защищены © Алексей Ровдо, 1994-2023. Перепечатка возможна только по согласованию с владельцем авторских прав. admin@club155.ru