Система команд x86 |
|
Программирование - Архитектура и система команд микропроцессоров x86 |
FYL2X
Влияние команды на флаги и форматы команды:
* |
* |
* |
* |
* |
* |
* |
D9 F1 |
FYL2X |
ST(1) = ST(1) * log2(ST(0)), верхний элемент выталкивается из регистрового стека |
8087 |
fyl2x |
Описание:
Команда FYL2X вычисляет ST(1)* log2(ST), помещает результирующее значение в ST(1) и выталкивает из регистрового стека верхний элемент ST.
Операция умножения введена в команду FYL2X для оптимизации вычисления логарифмов с произвольным положительным основанием: logbx = (log2b)-1* log2x. Команды FLDL2T и FLDL2E загружают константы log210 и log2e соответственно.
В таблице 6.198. приведены возвращаемые командой FYL2X значения для различных классов операндов, а также случаи, когда возникают исключения #IA и #Z.
Таблица 6.198. Значения, возвращаемые командой FYL2X для различных классов операндов
ST(1)ST(0) |
-INF |
-F |
±0 |
+0<+F<+1 |
+1 |
+F |
+INF |
NaN |
-INF |
#IA |
#IA |
+INF |
+INF |
#IA |
-INF |
-INF |
NaN |
-F |
#IA |
#IA |
#Z |
+F |
-0 |
-F |
-INF |
NaN |
-0 |
#IA |
#IA |
#IA |
+0 |
-0 |
-0 |
#IA |
NaN |
+0 |
#IA |
#IA |
#IA |
-0 |
+0 |
+0 |
#IA |
NaN |
+F |
#IA |
#IA |
#Z |
-F |
+0 |
+F |
+INF |
NaN |
+INF |
#IA |
#IA |
-INF |
-INF |
#IA |
+INF |
+INF |
NaN |
NaN |
NaN |
NaN |
NaN |
NaN |
NaN |
NaN |
NaN |
NaN |
F - Конечное вещественное значение |
Исключение #IA возникает также, если любой из операндов SNaN или представлен в неподдерживаемом формате.
Если происходит исключение #Z и соответствующая маска установлена, команда возвращает в качестве результата бесконечность со знаком, противоположным знаку исходного операнда (±0).
Флаги C0, C2, C3 регистра SW после выполнения команды неопределены, флаг C1 устанавливается равным 0 в случае возникновения стековой ошибки #IS, а также указывает направление округления в случае возникновения исключения #P (неточный результат): 0 – округление к меньшему, 1 – округление к большему.
Операция:
ST(1) = ST(1) * log2ST;
Pop(ST);
Все права защищены © Алексей Ровдо, 1994-2023. Перепечатка возможна только по согласованию с владельцем авторских прав. admin@club155.ru