亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 工业技术

二进制溢出:符号位如何影响二进制加法

处理有符号二进制数时,加减运算可能超出固定位数所能表示的幅度范围。这种现象称作溢出,因符号位位置在计算开始时即固定。

下例用五位表示幅度,最左(第六)位为符号位。五幅度位可表示 2⁵ = 32 个整数值,范围0至最大幅度。因此最大正数为 +31₁₀(011111₂),最小为 –32₁₀(100000₂)。

六位数字域的限制

两个同用六位域的二进制数相加,结果可能超出 –32 到 +31 范围。例如 +17₁₀ 与 +19₁₀ 相加真和为 +36₁₀,五幅度位无法表示。

二进制溢出:符号位如何影响二进制加法

二进制答案 100100₂ 若视第六位为 −32₁₀,则解读为 –28₁₀,显然错误;溢出错误因真和超出六位域限制。丢弃最左“进位”位得错误结果。

两负数相加也有类似问题。如 –17₁₀ + –19₁₀ 应得 –36₁₀,六位域下二进制结果为正28,再次指示溢出。

二进制溢出:符号位如何影响二进制加法

用第七位作符号位

扩展域至七位——六幅度位加一符号位——可容纳更大和。下图显示同问题在足够宽域下的解决。

二进制溢出:符号位如何影响二进制加法

虽可通过转回十进制检测溢出,但对电子电路繁琐不实用。更高效方法依赖和的符号。若两同号数相加得异号结果,则发生溢出。域足够时,两正数和不可能为负,两负数和不可能为正。

反之,正负数相加永不溢出。和总比任一操作数更接近零,保证在可表示范围内。

这些溢出检测规则实现于数字加法器,是计算机算术基础概念。

相关练习:

工业技术

  1. 电子学:人人可上手的实验科学
  2. 家庭电子实验室搭建全攻略:工具、工作台与耗材清单
  3. 万用表测电压实战:精准测量的核心技法与原理
  4. 3位二进制计数器:555定时器与4027触发器
  5. 十进制与二进制数制:位权、效率与转换
  6. 八进制与十六进制数制:工程师实用指南
  7. 二进制加法详解:规则、示例及在数字计算机中的作用
  8. 理解二进制负数:符号-数值、补码与二补码
  9. 利用二补码进行二进制减法
  10. 在 x86 系统上高效构建 ARM 容器
  11. 在 PLCnext 上构建首个 Go 应用:新手入门指南
  12. 溢流管详解:储罐超液位泄放与安全泄压的双重守护