assembly - 数据溢出时标志寄存器中的 CF、OF
问题描述
使用 Intel x86 / emu8086 仿真器,当具有以下值的字节溢出时:
mov al,-128
sub al,128
为什么CF是0,而OF也是0?谢谢
解决方案
-128 和 128 在 8 位(2 的补码或无符号)中是相同的数字。即两个指令的立即数都是0x80
.
x - x
= 0,无进位(无符号)或溢出(有符号)。
推荐阅读
- android - 如何防止添加新的片段并恢复加载的片段
- google-apps-script - GMail API:脚本在手动运行时有效,但在触发时无效
- javascript - 在组件上使用 this.props.history.push() 自动重定向
- r - 想要创建一个函数来传递相同的数据集
- c# - 我应该服用 ILogger, ILogger
, ILoggerFactory 或 ILoggerProvider 用于库? - java - 发送带有图像的 HTML 邮件,添加附件“noname”
- jquery - signature_pad 在 Laravel 5 应用程序中不起作用
- html - 如何为带有图像的按钮添加 id 和 value?
- floating-point - 为什么我们说 Double 类型是真正的浮点数,是 Float 类型精度的两倍
- sapb1 - 当我尝试在 SAP B1 中添加贷项通知单时弹出错误消息