Познавательный блог Мобильная врсия

Страницы

Промо

Как определить тип процессора на C++

Как определить тип процессора на 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;
}

Комментарии

Комментарий от Belizahrt [ 23 сентября, 2012, 14:50 ]

Я конечно понимаю, что уже как четыре года прошло, но все же…
Эта вставка переносит старшие значения(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;

Написать комментарий








Поиск по сайту

Статистика

Мета

  Разработка и дизайн — StvPromo.ru