deanli 发表于 2007-12-25 16:45

新手菜鸟问题:请问怎样读取AMD Opteron2210 CPU MSR寄存器?

刚开始学汇编,就被搞糊涂了,请高手解释一下
CPU是AMD Opteron2210,它的MSR寄存器有两种地址表示,例如:
=================================
MSR Address        MSR Name
-----------------------------
0179h              MCG_CAP
017Ah              MCG_STATUS
017Bh              MCG_CTL
C000_0408h         MC4_MISC1
C000_0409h         MC4_MISC2
C000_040Ah         MC4_MISC3         
=================================
请问这两种地址表示方式有什么不同?分别怎样读取?哪位大虾有源码可供参考,多谢!

streamzhang 发表于 2007-12-25 16:59

在启动盘中放入DEBUG32这个软件,用启动盘进入DOS并且启动DEBUG32,代码如下[quote]-a
   MOV ECX,INDEX    //比如MOV ECX,0179H
   RDMSR                    //读取寄存器中的值
   INT 3                         //设置编译中断
-g    回车
-R32   回车

    [/quote]

ECX中的值即是地址为INDEX寄存器中的值.

页: [1]

编程论坛