定点数的计算 计组学习笔记 (重要 精华)

本文详述了原码、补码的加减运算原理及溢出判断方法,包括一位符号位判断、进位情况分析和符号扩展,还涵盖了乘法和除法的运算技巧,如手算模拟、加减交替法等,适合深入理解计算机底层运算机制。

我很弱,但是我要坚强!绝不让那些为我付出过的人失望!

加减运算

原码的加减运算

在这里插入图片描述

补码的加减运算

在这里插入图片描述

溢出判断

在这里插入图片描述

  • 有点类似于 循环移位

方法一:一位符号位判断

在这里插入图片描述

方法二:符号与最高位进位情况

在这里插入图片描述

方法三:双符号位

在这里插入图片描述

符号扩展

在这里插入图片描述

总结

在这里插入图片描述

乘法运算

原码一位乘法

原理
在这里插入图片描述

手算方法模拟

在这里插入图片描述

补码一位乘法(课本)

在这里插入图片描述
实现原理

在这里插入图片描述

手算模拟

在这里插入图片描述

  • 注意: 补码的移位为 “算术右移” 符号位固定不动 ,正数补零,负数补一 , 与原码不同,原码是 “逻辑右移”

除法运算

原码的除法

加减交替法

手算模拟(十进制)

在这里插入图片描述

手算除法(二进制)

在这里插入图片描述

  • 规律 : 忽略小数点,每确定一位,进行一次减法,得到4位余数,在余数末尾补0,再确定下一位商。确定5位商即可停止(机器字长为5位)

恢复余数法 (计算机模拟)

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  • 形成错位除法相减的方法: 逻辑右移

恢复余数法(手算)

在这里插入图片描述

在这里插入图片描述

  • 注意:左移n次,上商n+1次,最后一次上商余数不左移

恢复余数法改进->加减交替法

  • 改进原理

在这里插入图片描述

实现方法
在这里插入图片描述
注意

  • 余数的正负性与商相同
  • 恢复余数法:当余数为负时商0,并+除数|,再左移,再-|除数|
  • 加减交替法:当余数为负时商0,并左移,再+|除数|
  • 若余数为负,需商0,并+[|y|]补得到正确余数(强调

在这里插入图片描述
注意 : 加/减 n+1 次,每次加减确定一位商,左移n次(最后一次加减完不移位)最终可能还要再多一次加

补码的除法

加减交替法

  • 符号位参与运算(负数的补码并不是绝对值的补码)
  • Eg : y = -0.1011 —> [-y]补 = 00.1011
  • 被除数/余数、除数采用双符号
  • 关键思路 : 确定 除数与余数 是否同号(确定是否 商 1 / 0)
  • 注意 : 补码的加减交替法 最后一位的处理 末位商 置为 1 ,既不像原码一样 的恢复余数

运算规则

被除数和除数同号,则被除数减去除数;异号则被除数加上除数。

  • 余数和除数同号,商 1,余数左移一位减去除数
  • 余数和除数异号,商 0,余数左移一位加上除数
  • 重复n次 💭

在这里插入图片描述

除法运算的总结

在这里插入图片描述

Tips

  • 补码的符号位能够参与运算

  • 关于Why 可以参考这里 👉 跳转链接

  • 运算器的组成(注意:ACC MQ X 的组成形式)
    在这里插入图片描述

鸣谢

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值