我们有STC
指令来设置进位标志。我们是否有类似的奇偶校验,溢出,符号标志等指令?我尝试了STP
,STS
等,但似乎这些不存在!
答案 0 :(得分:7)
不,这些命令不存在。您发现的方法是仔细阅读说明参考手册。
他们并非真正需要存在。 您可以非常轻松地有效地实现它们。 如果您不介意设置其他位,这是众多方法中的一种:
STP: XOR AL,AL ; resets parity bit
XOR AL,1 ; ... then set parity bit
STO: OR AL, 0FFh
SUB AL, 080h ; sets overflow
STS: OR AL, 0FFh ; sets sign bit
如果您坚持只设置特定位:
PUSHFD
OR dword ptr[ESP], <bitmask_for_flag_bit> ; see Intel manual
POPFD
硅空间是宝贵的,CPU设计者倾向于不提供容易完成的事情的说明。 (STC从8080天开始,在进行各种多精度算法时非常有用,并且不会损坏寄存器是非常好的事情。)