如果你必须与(E)SP
一起更改SS
(通常你必须),那么如果启用了中断,则必须使用单个LSS (E)SP, ...
指令或两个指令来完成说明MOV SS, ...
+ MOV (E)SP, ...
(按此顺序排列)。如果您先更改(E)SP
然后更改SS
,或者先更改SS
,然后执行其他一些说明,然后再更改(E)SP
,则必须执行所有禁用中断(例如使用CLI
)因为否则您将有一个窗口,其中SS:(E)SP
对将不正确/不一致,并且此时发生的任何中断都可能损坏内存。
您可以在intel和AMD CPU手册中了解所有这些内容。