2017-09-12 82 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指令不同,所以需要區分它們。