2017-09-12 63 views
-1

我想编写一个小程序来获取x86 CPU的功能。指CPUID文档后,我发现有2部分:如何使用CPUID指令正确获取x86 CPU功能?

(1)EAX=1

...... 
As of January 2011, the standard Intel feature flags are as follows: 
...... 

(2)EAX=80000001h

...... 
AMD feature flags are as follows: 
...... 

因此,这意味着,如果CPU厂商是GenuineIntel,我应该使用EAX=1而如果它是AuthenticAMD,我应该使用EAX=80000001h来执行CPUID指令。我的理解是否正确?

+0

你想要发现什么?如果它是像SSSE3这样的供应商中立的东西,那么您应该使用您尝试检测的功能指定的输入来执行CPUID ... –

回答

0

经过参考AMD CPUIDIntel CPUID的文档,我可以了解到他们的标志与EAX 1 CPUID指令不同,所以需要区分它们。