Assembler - язык неограниченных возможностей


. Другие команды - часть 2


Результат работы CPUID зависит от значения регистра ЕАХ. Если ЕАХ = 0, CPUID возвращает в ЕАХ максимальное значение, с которым ее можно вызывать (2 для Р6, 1 для Р5), а регистры EBX:ECX:EDX содержат 12-байтную строку — идентификатор производителя (табл. 8).


Таблица 8. Строки производителей в CPUID


Производитель Строка в ЕВХ:ЕСХ:ЕРХ
Intel GenuineIntel
UMC UMC UMC UMC
Cyrix CyrixInstead
AMD AuthenticAMD
NexGen NexGenDriven
Centaur Technology CentaurHalls


Например, для процессоров Intel регистр ЕВХ содержит «Genu» (756E6547h), ЕСХ содержит «ineI» (49656E69h), a EDX — «ntel» (6C65746Eh).

Если ЕАХ = 1, CPUID возвращает в ЕАХ информацию о версии процессора, а в EDX — информацию о поддерживаемых расширениях. Многие понятия в этом описании относятся к работе процессора в защищенном режиме и рассмотрены ниже.

    Биты 3 – 0 ЕАХ — Модификация.

    Биты 7 – 4 ЕАХ — Модель.

    Биты 11 – 8 ЕАХ — Семейство (3 для 386, 4 для 486, 5 для Pentium, 6 для Pentium Pro).

    Биты 13 – 12 ЕАХ — Тип (0 — OEM, 1 — Overdrive, 2 — Dual).

    Биты 31 – 14 ЕАХ зарезервированы и равны нулю.

    Бит 0 EDX — «FPU» Процессор содержит FPU и может выполнять весь набор команд 80387.

    Бит 1 EDX — «VME» Процессор поддерживает усовершенствованный режим V86 (флаги VIF и VIP в EFLAGS, биты VME и PVI в CRO).

    Бит 2 EDX — «DE» Процессор поддерживает точки останова по вводу/выводу, бит DE в CR0.

    Бит 3 EDX — «PSE» Процессор поддерживает страницы до 4 Мб, бит PSE в CR4, модифицированные биты в элементах списков страниц (РDЕ) и таблиц страниц (РТЕ).

    Бит 4 EDX — «TSC» Процессор поддерживает команду RDTSC и бит TSC в CR4.




    Начало  Назад  Вперед