Поделиться через


Образец CPUID: определение возможностей ЦП

Обновлен: Ноябрь 2007

Образец CPUID содержит программу, в которой с помощью инструкции CPUID определяются возможности используемого ЦП.

В образце используется функция int _cpuid(_p_info *pinfo), возвращающая сведения о ЦП. Возвращаемое значение типа int представляет собой битовую маску флагов основных возможностей процессора. В ней могут быть установлены следующие биты:

  • #define _CPU_FEATURE_MMX 0x0001

  • #define _CPU_FEATURE_SSE 0x0002

  • #define _CPU_FEATURE_SSE2 0x0004

  • #define _CPU_FEATURE_3DNOW 0x0008

xs6aek1h.alert_security(ru-ru,VS.90).gifПримечание о безопасности.

Этот образец кода служит для демонстрации основных принципов и не предназначен для использования в приложениях или на веб-узлах, поскольку не может считаться примером наиболее безопасного кода. Корпорация Майкрософт не несет ответственности за случайные или косвенные убытки в случае использования образца кода не по назначению.

Чтобы получить образцы и инструкции по их установке, выполните следующие действия.

  • В меню Справка среды Visual Studio выберите пункт Примеры.

    Дополнительные сведения см. в разделе Поиск файлов примеров.

  • Самая последняя версия и полный список образцов доступны в Интернете на странице образцов Visual Studio 2008.

  • Кроме того, образцы находятся на жестком диске компьютера. По умолчанию образцы кода и файл Readme копируются в папку, находящуюся в папке \Program Files\Visual Studio 9.0\Samples\. Все образцы кода для экспресс-выпусков Visual Studio находятся в Интернете.

Построение и запуск образца

Построение и запуск этого образца

  1. Откройте решение cpuid.sln.

  2. В меню Построение выберите команду Построить.

  3. Из меню Отладка выберите пункт Запуск без отладки.

Пример выходных данных программы

Образец включает файл test.cpp, который просто вызывает _cpuid и выводит значения в результирующей структуре _p_info. Например, на компьютере с процессором Pentium III, поддерживающем MMX и SSE, выходные данные программы могут выглядеть так:

C:\work\cpuid>test
v_name:         GenuineIntel
model:          INTEL Pentium-III
family:         6
model:          8
stepping:       3
feature:        00000003
        yes     _CPU_FEATURE_MMX
        yes     _CPU_FEATURE_SSE
        no      _CPU_FEATURE_SSE2
        no      _CPU_FEATURE_3DNOW
os_support:     00000003
        yes     _CPU_FEATURE_MMX
        yes     _CPU_FEATURE_SSE
        no      _CPU_FEATURE_SSE2
        no      _CPU_FEATURE_3DNOW
checks:         0000000f

См. также

Другие ресурсы

Общие образцы