Новые команды микропроцессора Pentium
Микропроцессор Pentium имеет только одну новую команду для работы со стандартным программным обеспечением системы; остальные новые команды добавлены для режима системного управления SMM, идентификации процессора и некоторые другие системные команды. В табл. 6.3 перечислены новые команды, которые добавлены в набор команд микропроцессора Pentium.
Таблица 6.3.
Новые команды микропроцессора Pentium
Команда | Функция |
CMPXCHG8B | Сравнивает и обменивает 8 байт содержимого регистров EDX:EAX с приемни- ком команды |
CPUID | Возвращает идентификационный код микропроцессора (CPU) |
RDTSC | Считывает из счетчика тактов процессора TSC |
RDMSR | Считывает из специфического регистра для модели — регистра MSR |
WRMSR | Записывает в специфический регистр для модели — регистр MSR |
RSM | Возврат из прерывания системного управления SMM |
Команда cmpxchg8b является расширенной командой cmpxchg, дополненной в набор команд микропроцессора 80486. Команда cmpxchg8b сравнивает 64-разрядное число, хранимое в регистровой паре EDX и ЕАХ с содержимым 64-разрядной ячейки памяти или регистровой парой, указанной приемником команды. Например, команда cmpxchg8b data1 сравнивает 8 байт содержимого ячейки памяти DATA1 с 64-разрядным числом, хранящимся в регистрах EDX и ЕАХ. Если содержимое ячейки DATA1 равно содержимому регистровой пары EDX:EAX, тогда хранимое в этой паре регистров 64-разрядное число запоминается в ячейке памяти DATA1. Если же они не равны, то содержимое ячейки DATA1 копируется в регистры EDX:EAX. Обратите внимание, что флаг нулевого результата ZF после выполнения команды cmpxchg8b устанавливается, если содержимое регистров EDX.EAX было равно содержимому ячейки DATA1 или сбрасывается в противном случае.
Значение регистра ЕАХ до выполнения команды | Результат выполнения командыcpuid |
ЕАХ = 1 для всех микропроцессоров Pentium | |
EBX:EDX:ECX = идентификация производителя процессора | |
ЕАХ (биты 3—0) = модификация процессора (stepping ID) | |
ЕАХ (биты 7—4) = модель | |
ЕАХ (биты 11—8) = семейство | |
ЕАХ (биты 13—12) = тип | |
ЕАХ (биты 31—14) = зарезервированы и равны нулю | |
EDX (бит 0) = процессор содержит сопроцессор (FPU) | |
EDX (бит 1) = поддержка улучшенного режима виртуального микропроцессора 8086 | |
EDX (бит 2) = процессор поддерживает точки останова для ввода-вывода | |
EDX (бит 3) = процессор поддерживает расширенный размер страниц 4 Мбайта | |
EDX (бит 4) = поддержка счетчика TSC | |
EDX (бит 5) = поддержка регистра MSR | |
EDX (бит 6) = зарезервирован | |
EDX (бит 7) = поддержка бита МСЕ в регистре CR4 | |
EDX (бит 8) = поддержка команды CMPXCHG8B | |
EDX (бит 9) = микропроцессор с питанием 3,3 В | |
EDX (биты 10—31) = зарезервированы |
Дата добавления: 2016-03-10; просмотров: 753;