Как узнать разрядность процессора

До недавнего времени существовал только одна разновидность процессоров для компьютеров на платформе Windows/Intel - это 32-х битные процессоры. Эти процессоры выпускались компанией Intel с 1985 года. Первой 32-х разрядной моделью был процессор Intel 386. В это время уже выпускались 64-х разрядные микропроцессоры других фирм, например, в суперкомпьютере КРЕЙ-1 использовался 64-х битный микропроцессор аж с 1975 года. Сейчас 64-х разрядные процессоры стали массово доступны, под них появились операционный системы.

Как узнать разрядность процессора, работающего на вашем компьютере? Самый простой способ - это использовать ассемблерную команду CPUID, которая позволяет получить информацию о процессоре. Использование этой команды подробно описано в википедии - в регистр EAX следует занести значение 80000001h, далее вызвать команду cpuid, и затем смотреть содержимое 29-го бита регистра EDX. Если этот бит равен единице, то процессор - 64-х разрядный.

Именно по такому алгоритму и определяется разрядность процессора в консольной утилите iscpu64bits, которую можно скачать здесь: iscpu64bits.zip.

Запустив эту утилиту, можно увидеть результат её работы:

The CPU is 64 bits
Press any key to continue...

Это результат, полученный для 32-х разрядной операционной системы "Windows", работающей в компьютере с 64-х разрядным процессором. Тот же самый результат будет получен и для 64-х разрядной "Windows", если она работает на 64-х разрядном процессоре.

Ещё один способ того, как узнать разрядность процессора на вашем компьютере - это применение программы CPU-Z, которую можно скачать на официальном сайте. Запустив эту программу, в разделе "Instructions" можно видеть, что процессор (x86-64) 64-х разрядный:

Окно программы CPU-Z, откуда можно узнать разрядность процессора в системе

В интернете есть совет о том, как узнать разрядность процессора, используя параметр Identifier в ключе регистра

HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\CentralProcessor\0

На самом деле это заблуждение - по содержимому этого параметра нельзя узнать разрядность! Например, в 32-х разрядной операционной системе "Windows XP", работающей на 64-х разрядном процессоре, содержимое параметра Identifier будет следующее:

x86 Family 6 Model 2 Stepping 3

Ешё один неправильный совет про то, как узнать разрядность процессора, рекомендует запустить программу msinfo32 - для этого нажав Пуск --> Выполнить следует ввести msinfo32.exe, и смотреть, чему равен параметр System Type:

x86-based PC

Здесь тоже для 32-х разрядной операционной системы "Windows XP", работающей на 64-х разрядном процессоре, результат будет неверным.

BACK