当前位置: 首页 > news >正文

布斯(Booth)补码乘法:原理推导与实站案例讲解

布斯(Booth)乘法

文章目录

1.背景

  • 在了解了手动补码运算之后 ——> 计算机内部是如何进行补码的乘法的运算 ——>布斯(Booth)乘法

  • A. D. Booth(安德鲁·唐纳德·布斯,Andrew Donald Booth) 提出了一种补码相乘算法,可以将符号位和数值位合在一起参与运算,直接得出用补码表示的乘积,且正数和负数同等对待。这种算法别乘法布斯(Booth)乘法

  • 注:[ X × Y ] 补 ≠ [ X ] 补 × [ Y ] 补 [X \times Y]_{\text{补}} \neq [X]_{\text{补}} \times [Y]_{\text{补}}[X×Y]=[X]×[Y]

2.公式推导

2.1 补码算真值公式

2.2[ X × Y ] 补 [X \times Y]_{\text{补} }[X×Y]的布斯乘法递推公式

这里简单解释下这个过程:在上面得到了求一个数补码的真值的形式 ----> 把它凑成一个递推的形式 —–> 拆分构造( Y i − 1 − Y i ) (Y_{i-1}-Y_i)(Yi1Yi)差分结构

粉色画线部分 即 之后的每一项都整理成 —–>后一位置二进制数减去当前位二进制数的形式

2.3 部分积Pi递归公式

这里简单解释下这个过程 —> 其实就是把 (2)式展开 然后再合并一下 —–> 自己手写一下展开过程 很简单

2.4 联立 (2) (3) 式

(2)式从P1到Pn每次都要乘一个1/2乘n次就是 2-n

2.5 结果

对(2)的补充

​ Yi- Yi-1> 0 则 + [ x ]

​ Yi- Yi-1< 0 则 - [ x ]

​ Yi- Yi-1= 0 则 + 0

3 案例

P 是乘积寄存器,Y是乘数寄存器

简单解释下这个计算过程 —–>

第一行:初始化,乘积寄存器P和辅助位Y-1初始化为0 放入乘数Y

第二行: Yi- Yi-1= 0 则 + 0 然后再右移一位 P为 0000 0 Y为 011 Y-1为0

第三行: Yi- Yi-1< 0 则 - [ x ]然后再右移一位 P为 0001 10 Y为 01 Y-1为1

第四行: Yi- Yi-1= 0 则 + 0 然后再右移一位 P为 0000 110 Y为 0 Y-1为1

第五行: Yi- Yi-1> 0 则 + [ x ]然后再右移一位 P为 1110 1110 Y为空 Y-1为0

最后即得到[ X × Y ] 补 [X \times Y]_{\text{补} }[X×Y]的乘积 即为P中的内容 1110 1110

​ 嘻嘻嘻嘻布斯乘法部分到此结束😆😆

​ (有错误欢迎指出) (疑问也是)❤️❤️😍😍💖💖

持续更新中… …

http://www.cnnetsun.cn/news/3330195.html

相关文章:

  • SAP QM 检验点(Inspection Point) 实战:3步配置与4个事务代码打通采购质检流程
  • CFD液滴破碎模型选择指南:TAB、KHRT、Wave对比与应用
  • 摆脱论文困扰!盘点2026年用户挚爱的的AI论文写作软件
  • IPXWrapper终极指南:5分钟让Windows 10/11完美运行经典联机游戏
  • 为什么区块链可以做到不可篡改?
  • AI工具在自媒体内容创作中的实践指南与落地策略
  • ChatGPT Plus订阅技术指南:API调用优化与成本控制策略
  • IEEE 754 浮点数标准:从二进制表示到精度丢失的 3 个实战案例解析
  • YARA规则集成实战:3步将自定义规则部署到Symantec Endpoint Protection 14.3
  • 短信验证码缓存设计实战:Redis 5分钟过期策略与3次校验限制
  • Linux基础学习(4)
  • SAP CKMLCP 过账清算 7 大常见报错:从权限锁定到凭证行超限的完整解决方案
  • Scrapy基础文本爬虫实战:从零搭建可维护的数据采集服务
  • 离线安装gcc/make依赖排查:从5个常见报错到完整解决方案
  • 生成式AI在公共卫生领域的应用:从技术原理到疾病预测实战
  • 已解决:注册谷歌gmail邮箱出现扫码验证的5个有效办法
  • Metasploit 6.4 实战:Kali Linux 生成 Windows 木马并控制 3 台虚拟机
  • Interactive Petrophysics(IP)测井分析软件介绍
  • Bootstrap入门:用Flask打通前端样式与Python后端的数据链路
  • TLP241A光耦与PIC18LF4455的电气隔离设计实践
  • 扩散模型在3D医学影像生成中的应用与挑战
  • TikTok API申请实战:从三次被拒到一次通过的完整复盘TikTok API
  • H3C交换机光模块信息全解析:从基础参数到400G高级诊断的5个关键命令
  • 思源宋体CN终极指南:如何在7天内快速掌握这款免费商用中文字体
  • 数据结构学习之路(八)----二叉搜索树(BST):从原理到代码实现
  • 初级电池寿命延长技术:NBM7100A与PIC18F97J94低功耗方案
  • ROS TF坐标变换从原理到C++实战详解
  • Unity InputField onEndEdit事件优化:区分回车提交与失焦的跨平台解决方案
  • 关于我 幸运-草
  • Java面试官最看重的几个能力指标