【发布时间】:2016-11-08 03:20:34
【问题描述】:
这是我在 Intel x86-64 文档中看到的 neg 和许多其他指令(包括 sub,因此将 neg x 的 FLAGS 理解为 0 - x 取决于此)。
OF、SF、ZF、AF 和 PF 标志根据结果设置。
我假设sf = dest < 0、zf = dest == 0,但无法弄清楚其他标志是如何设置的。
我到处都看到这个“根据结果设置”短语,希望您能帮助理解“相应地”设置标志的确切含义。
【问题讨论】:
-
neg x实现0-x,一个完全正常的减法 (sub)。 -
我从文档中知道 dest = -dest 用于 neg 指令,但我想知道如何修改标志。在许多情况下,文档将定义伪代码指令如何设置标志。在某些情况下,它会在“受影响的标志”部分列出未定义的标志。但是“相应设置”让我感到困惑,我真的很想知道它的含义。
-
您的回答加上 David G 的回答解决了我的困惑。感谢您的帮助!
-
我将此标记为新问题的副本,因为在此处接受的答案中,
neg如何设置 AF 的真正答案并不明确。
标签: assembly x86 x86-64 eflags