Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Оптимизация для pentium процессора - список целочисленных инструкций

20 СПИСОК ЦЕЛОЧИСЛЕННЫХ ИНСТРУКЦИЙ
==================================
Пояснения:
Операнды: r - регистр, m - память, i - непосредственное значение,
sr - сегментный регистр, m32 - 32 битный операнд памяти, и т.д.

Такты:
Цифры указывают минимальные значения. Промахи кеша, рассогласование и
исключения могут увеличить количество тактов.

Спариваемость:
u - спаривается только в U-трубе, v - только в V-трубе, uv - спариваются в
любой трубе, np - не спаривается вообще.

Опкод                  Операнды            Число тактов        Спариваемость
----------------------------------------------------------------------------
NOP                                        1                   uv
MOV                    r/m, r/m/i          1                   uv
MOV                    r/m, sr             1                   np
MOV                    sr,  r/m            >= 2 б)             np
XCHG                   (E)AX, r            2                   np
XCHG                   r  ,   r            3                   np
XCHG                   r  ,   m            >20                 np
XLAT                                       4                   np
PUSH                   r/i                 1                   uv
POP                    r                   1                   uv
PUSH                   m                   2                   np
POP                    m                   3                   np
PUSH                   sr                  1 б)                np
POP                    sr                  >= 3 б)             np
PUSHF                                      4                   np
POPF                                       6                   np
PUSHA POPA                                 5                   np
LAHF SAHF                                  2                   np
MOVSX MOVZX            r, r/m              3 а)                np
LEA                    r/m                 1                   uv
LDS LES LFS LGS LSS    m                   4 в)                np
ADD SUB AND OR XOR     r  , r/i            1                   uv
ADD SUB AND OR XOR     r  , m              2                   uv
ADD SUB AND OR XOR     m  , r/i            3                   uv
CMP                    r  , r/i            1                   uv
CMP                    m  , r/i            2                   uv
TEST                   r  , r              1                   uv
TEST                   m  , r              2                   uv
TEST                   r  , i              1                   е)
TEST                   m  , i              2                   np
ADC SBB                r/m, r/m/i          1/3                 u
INC DEC                r                   1                   uv
INC DEC                m                   3                   uv
NEG NOT                r/m                 1/3                 np
MUL IMUL               r8/r16/m8/m16      11                   np
MUL IMUL               all other versions  9 г)                np
DIV                    r8/r16/r32          17/25/41            np
IDIV                   r8/r16/r32          22/30/46            np
CBW CWDE                                   3                   np
CWD CDQ                                    2                   np
SHR SHL SAR SAL        r  , i              1                   u
SHR SHL SAR SAL        m  , i              3                   u
SHR SHL SAR SAL        r/m, CL             4/5                 np
ROR ROL RCR RCL        r/m, 1              1/3                 u
ROR ROL                r/m, i(><1)         1/3                 np
ROR ROL                r/m, CL             4/5                 np
RCR RCL                r/m, i(><1)         8/10                np
RCR RCL                r/m, CL             7/9                 np
SHLD SHRD              r, i/CL             4 а)                np
SHLD SHRD              m, i/CL             5 а)                np
BT                     r, r/i              4 а)                np
BT                     m, i                4 а)                np
BT                     m, r                9 а)                np
BTR BTS BTC            r, r/i              7 а)                np
BTR BTS BTC            m, i                8 а)                np
BTR BTS BTC            m, r               14 а)                np
BSF BSR                r  , r/m            7-73 а)             np
SETcc                  r/m                 1/2 а)              np
JMP CALL               short/near          1                   v
JMP CALL               far                 >= 3                np
conditional jump       short/near          1/4/5 д)            v
CALL JMP               r/m                 2                   np
RETN                                       2                   np
RETN                   i                   3                   np
RETF                                       4                   np
RETF                   i                   5                   np
J(E)CXZ                short               5-8                 np
LOOP                   short               5-9                 np
BOUND                  r  , m              8                   np
CLC STC CMC CLD STD                        2                   np
CLI STI                                    6-7                 np
LODS                                       2                   np
REP LODS                                   7+3*n ж)            np
STOS                                       3                   np
REP STOS                                   10+n  ж)            np
MOVS                                       4                   np
REP MOVSB                                  12+1.8*n ж)         np
REP MOVSW                                  12+1.5*n ж)         np
REP MOVSD                                  12+n     ж)         np
SCAS                                       4                   np
REP(N)E SCAS                               9+4*n    ж)         np
CMPS                                       5                   np
REP(N)E CMPS                               8+5*n    ж)         np
BSWAP                                      1 а)                np
----------------------------------------------------------------------------

Примечания:
а) Эта инструкция имеет префикс 0FH и требует 1 дополнительный такт на
   Pentium без MMX, если не расположен за инструкцией мультицикла (см.
   раздел 13).
б) Вариант с FS и GS имеет префикс 0FH, см. примечание а.
в) Вариант с SS, FS и GS имеет префикс 0FH, см. примечание а.
г) Вариант с двумя операндами, без непосредственного значения имеет префикс
   0FH, см. примечание а.
д) См. раздел 12
е) Спаривается только, если регистр - аккумулятор, см. раздет 17.2
ж) Дополнительно один такт на декодирование префикса повторения, если префикс
   не расположен за инструкцией мультицикла (как например CLD, см. раздел 13).

Оставить комментарий

Комментарий:
можно использовать BB-коды
Максимальная длина комментария - 4000 символов.
 
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог