logo

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

Система команд 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

F2XM1

Вычислить 2^x - 1

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

IS

IA

D

Z

O

U

P

*

*

*

 

 

*

*

 

Код

Команда

Описание

Проц.

Пример

D9 F0

F2XM1

ST(0) = 2^ST(0) - 1

8087

f2xm1

Описание:

Команда F2XM1 замещает содержимое ST значением $({2^{ST}–1}$). Исходное значение ST должно лежать в диапазоне:

  • $(–1 < ST < 1 $)  — для Intel387, Intel486, …
  • $(0 ≤ ST ≤ 0,5 $)  — для Intel287 и 8087.

 

Если операнд находится вне приемлемого диапазона, то результат F2XM1 неопределен. Если операнд SNaN или представлен в неподдерживаемом формате, то вызывается исключение #IA.

При необходимости возведения в степень чисел, отличных от 2, может быть использована формула:

$(X^Y = 2^{(Y{ }log_2{X})}$).

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

Операция:

ST = (2^ST - 1);

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

#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       Сервер радиолюбителей России - схемы, документация,

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