Page 33 - 4989
P. 33
рядок «AuthenticAMD».
У більшості випадків результати виконання CPUID
розміщуються в бітових полях невеликої довжини в межах 32-
розрядного регістру. Наприклад, при ЕАХ=1 формат результату в
регістрі ЕАХ наступний:
3:0 – степпінг
7:4 – модель
11:8 – сімейство
13:12 – тип процесора
19:16 – розширена модель
27:20 – розширене сімейство
Щоб виділити потрібну характеристику в окрему змінну,
можна скористатись командами зсуву та логічним «І».
Наприклад, якщо необхідно виділити біти з 29 по 30, це можна
зробити такими командами:
AND EAX, 60000000h ; одинички в бітах 29 і 30
SHR EAX, 29
або
SHR EAX, 29
AND EAX, 03h
У регістрі EDX при ЕАХ=1 повертається набір бітів, що
визначають, які інструкції підтримує процесор. Детальніше див.
повну довідку по CPUID.
3.3.5 Використання асемблерних вставок у середовищі
Microsoft Visual Studio
Більшість компіляторів С++ дозволяють використовувати
33