小编use*_*166的帖子

为什么在这个例子中没有设置溢出标志?

mov     al, -1
add     al, 130
Run Code Online (Sandbox Code Playgroud)

我正在尝试回答我的 x86 汇编课程教科书中的一个问题。其中一个示例要求解释为什么 over 标志会帮助您确定在这种情况下 al 的最终值是否在有效的有符号范围内。

我最初的想法是应该调用溢出标志,因为 -1 + 130 = 129,这超出了有符号 8 位整数的范围,而 al 是 EAX 寄存器的最低 8 位。但是当我在 Visual Studio 中运行此代码时,我没有看到设置了溢出标志。

x86 assembly cpu-registers eflags signed-overflow

1
推荐指数
1
解决办法
80
查看次数

标签 统计

assembly ×1

cpu-registers ×1

eflags ×1

signed-overflow ×1

x86 ×1