Меню
Категории
Как определить тип процессора на C++
12 марта, 2008 Программинг

Как определить тип процессора на C++. Используем Ассемблерную вставку. Что она делает я в душе не ебу по показывает правильно.

#include <iostream.h>
#include <conio.h>
#include <windows.h>

int main(int argc, char* argv[])
{
BYTE m,s;
asm
{
mov m,dh;
mov s,dl;
}

int a = m;
cout<<“Type Processor : “<<a<<endl;
a = s;
cout<<“Number Processor: “<<a<<endl;
return 0;
}

"1" Comment
  1. Я конечно понимаю, что уже как четыре года прошло, но все же…
    Эта вставка переносит старшие значения(H) регистра DX в байтовую переменную m, и младшие значение DL в s. Регистр DX – это регистр процессора, и лучше избегать подобного обращения к нему. Да и вообще значение вернется числовое, так что это не лучший вариант.
    Я делаю так:
    AnsiString ProcessorName;
    TRegistry *reg = new TRegistry;
    reg->RootKey = HKEY_LOCAL_MACHINE;
    reg->OpenKey(“Hardware\\Description\\System\\CentralProcessor\”, false);
    ProcessorName=reg->ReadString(“ProcessorNameString”);
    delete reg;

Добавить комментарий




*