Методические указания по лабораторным работам по курсу «Аппаратные средства компьютерных систем», страница 5

Команда CPUID предоставляет программному обеспечению информацию о производителе, семействе, поколении и модели процессора, на котором она выполнена. Ее функция определяется содержимым регистра EAX в момент вызова CPUID (табл. 1.1).

Рисунок 1.3 — Содержимое регистра EDX после сброса процессора

Рисунок 1.4 — Содержимое регистра EDX после сброса процессора i386

Таблица 1.1 — Исполнение команды CPUID

Параметр вызова

Результат выполнения CPUID

EAX = 0

EAX — наивысшее значение, распознанное командой CPUID

EBX:EDX:ECX — строка идентификации производителя

EAX = 1

EAX — сигнатура процессора

EDX — флаги свойств

EBX:ECX — зарезервировано Intel

EAX = 2

EAX, EBX, ECX, EDX — параметры конфигурации процессора

3 £ EAX £ наивысшее значение

Зарезервировано Intel

EAX > наивысшее значение

EAX, EBX, ECX, EDX не определены (не используются)

Для процессора Pentium возвращаемое в EAX значение будет 1. В выходное значение этой команды также включена (со входным значением 0 в EAX) строка идентификации производителя, содержащаяся в регистрах EBX, EDX и ECX. EBX содержит первых 4 символа, EDX — следующие 4 символа, а ECX — последние 4 символа.

После выполнения команды CPUID с 1 в EAX, EAX[3:0] будет содержать номер разработки микропроцессора (степпинг), EAX[7:4] — модель (первая модель будет указана 0001b в этих битах), EAX[11:8] — семейство (5 для семейства процессоров Pentium); EAX[31:12], EBX и ECX не используются (зарезервированы).