如何设置寄存器CR0的MP和TS标志位? x86 快

How to set MP and TS flags of register CR0? x86 Fasm

如何设置寄存器CR0的MP和TS标志?

我只知道怎么设置PE标志:

mov eax, cr0
or eax, 1
mov cr0, eax

查看 this Wikipedia article about Control Registers 并相应地设置位。在你的例子中,从 0 开始,MP 位在位置 1,TS 位在位置 3。

所以可以用下面的代码设置CR0中的MP和TS标志位:

mov eax, cr0
or  eax, 10      ; 2^1(MP) + 2^3(TS) = 2 + 8 = 10 decimal
mov cr0, eax