【计算机组成原理】定点数的乘法运算

定点数的乘法运算

  • 定点乘法运算
    • 人工算法和机器的矛盾
    • 不带符号的阵列乘法器
    • 带符号的阵列乘法器
      • 求补电路
        • 求补电路的思想
    • ✨️间接补码乘法运算的步骤

定点乘法运算

在定点计算机中,两个原码表示的数相乘的运算规则是:乘积的符号位 = 两数的符号位异或乘积的数值部分 = 两个正数相乘之积

设n位被乘数和乘数用定点整数表示:(定点小数也同样适用)
被乘数 [x] = xfxn-1 ··· x1x0
乘数 [y] = yfyn-1 ··· y1y0
乘积 [z] 的符号是 (xf⊕yf) ,数值部分是 (xn-1 ··· x1x0) (yn-1 ··· y1y0)
(xf、 yf是符号)

人工算法和机器的矛盾

设 x = 1101,y = 1011,用我们习惯的方法求乘积,过程如下:
在这里插入图片描述
与十进制的乘法相似。(乘数和被乘数是定点小数也一样)

❗但是,人们习惯的算法对计算机来说并不适用:
n位的机器,对于两个n位数相乘,乘积可能为2n位
②只有两个操作数相加的加法器,无法将n个位积一次性加起来

因此,早起计算机为了简化硬件结构,采用串行的1位乘法方案→多次执行“加法-移位”操作(串行乘法器)。然而串行方法太慢,满足不了我们的需求,因此串行乘法器已经被淘汰。

自从大规模集成电路问世以来,高速的单元阵列乘法器应运而生。目前广泛使用的是流水式阵列乘法器→并行乘法器!

不带符号的阵列乘法器

n位无符号数 × n位无符号数 会产生 n×n 个位积,n+n-1个列和。
并行乘法器关键是快速产生 n×n 个位积,对位积进行相加运算产生n+n-1个列和

请添加图片描述在这里插入图片描述在这里插入图片描述
这种乘法器要实现n位 × n位 运算,需要n(n-1)个全加器n2个与门

带符号的阵列乘法器

在讲带符号的阵列乘法器的原理前,我们先看算术运算部件设计中常用的求补电路

求补电路

图2.6是一个有使能控制的二进制对2求补电路图(二进制对2求补:计算二进制数的2’s complement,即二进制数的补码)

逻辑表达式:
C-1=0
Ci = ai + Ci-1
a*i = ai ⊕ ECi-1

在这里插入图片描述
最右端起始链式输入C-1必须永远设置成 “0”
当控制信号线 E=1 时,是对2求补操作;
E=0 时,输出和输入相等。→显然我们可以 用符号位来作为控制信号

求补电路的思想

先看由补码求原码的运算:
[101100100] → [110011100]

[111010000] → [100110000]

[101011011] → [110100101]

通过观察可以知道:正数的补码不变,负数的补码等于从右边开始,遇到第一个真值的1以后,除了符号位外0变1,1变0

由此得求补电路的思想
①如果符号位是0,数据不变
②如果符号位是1,符号位不变,数据位从右边开始的第一个1以后除符号位全部取反

✨️间接补码乘法运算的步骤

设 [A] = anan-1…a1a0和 [B] = bnbn-1…b1b0均为用定点表示的(n+1)位带符号整数的补码。求 [A]×[B]的步骤如下:

① 将 [A] 和 [B] 的数值位an-1…a1a0和bn-1…b1b0经过求补电路后变成 |[A]| 和 |[B]|,该补码电路称为算前求补器

② 将两个n位正整数 |[A]| 和 |[B]| 送给 n×n 位不带符号的阵列乘法器由此产生2n位原码乘积

③ 将2n位原码乘积经过求补电路变成补码,该补码电路称为算后求补器

④ 将A和B的符号位an和bn进行异或,作为结果的符号位

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/563547.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

python文件 成绩分析

‘’文件score.txt中存储了学生的考试信息,内容如下 小明,98 小刚,90 小红,91 小王,98 小刘,80 请写代码,读取文件数据,并进行如下分析 最高分和最低分分别是多少?得最高分的学生有几个? 得最低分的学生有几个平均分是多少? ‘’’ def rea…

使用Python比较两张人脸图像并获得准确度

使用 Python、OpenCV 和人脸识别模块比较两张图像并获得这些图像之间的准确度水平。 一、原理 使用Face Recognition python 模块来获取两张图像的128 个面部编码,并比较这些编码。比较结果返回 True 或 False。如果结果为True ,那么两个图像将是相同的…

第一届 _帕鲁杯_ - CTF挑战赛

Mis 签到 题目附件: 27880 30693 25915 21892 38450 23454 39564 23460 21457 36865 112 108 98 99 116 102 33719 21462 21069 27573 102 108 97 103 20851 27880 79 110 101 45 70 111 120 23433 20840 22242 38431 22238 22797 112 108 98 99 116 102 33719 2…

前端开发攻略---合并表格单元格,表格内嵌套表格实现手风琴效果。

1、演示 2、思路 1、用传统的 <table></table> 表格标签来实现比较麻烦。因此通过模拟 表格标签 的写法用<div></div>来实现 2、表头和表格列数是相同的&#xff0c;因此可以确定代码结构 <div class"table"><div class"head…

【开发篇】本章包括消息订阅、客服配置与使用实战(小程序之云函数开发入门到使用发布上线实操)

客服回复效果图展示 消息订阅效果图展示 一、客服配置 客服消息使用指南传送门 <button open-type="contact" class="fab" ><view class="item"

Vue2 —— 学习(十)

一、vue-resource 库 了解即可 在之前的 vue 版本中经常使用 这个库发送 ajax 请求 现在建议使用 axios 我们可以通过使用 vue-resource 库 来实现发送 ajax 请求 它是 vue 的一个插件库 Vue.use() 就能使用我们的插件了 我们引入后去 我们的实例对象 vc 中查看 发现出现…

【论文笔记】RS-Mamba for Large Remote Sensing Image Dense Prediction(附Code)

论文作者提出了RS-Mamba(RSM)用于高分辨率遥感图像遥感的密集预测任务。RSM设计用于模拟具有线性复杂性的遥感图像的全局特征&#xff0c;使其能够有效地处理大型VHR图像。它采用全向选择性扫描模块&#xff0c;从多个方向对图像进行全局建模&#xff0c;从多个方向捕捉大的空间…

大模型系列课程学习-大预言模型微调方法介绍

1.大语言模型相关基本概念综述 语言模型指对语言进行建模&#xff0c;其起源于语音识别(speech recognition)&#xff0c;输入一段音频数据&#xff0c;语音识别系统通常会生成多个句子作为候选&#xff0c;究竟哪个句子更合理&#xff1f; 学术上表达为&#xff1a;描述一段自…

GitHub登录收不到邮箱验证码

由于长时间没有登录GitHub&#xff0c;浏览器可能清除了相应的cookie信息&#xff0c;所以需要对应绑定邮箱进行验证&#xff0c;但因为邮箱长时间没有收到验证码&#xff0c;所以给到以下一种可能解决的方法&#xff1a; 需要输入验证码进行验证 我们可以打开QQ邮箱&#xff0…

Linux——网络管理nmcli

nmcli 不能独立使用&#xff0c;需要对应的服务启动 1. NetworkManager.service 2. 网络配置和服务不相关 3. 通过 nmcl &#xff49; 建立网络配置和网卡之前的映射关系 网卡 简称&#xff1a;nmcli d DEVICE &#xff1a;物理设备 TYPE: 物理设备类型 ethernet 以太网…

【Java基础】25.包(package)

文章目录 前言一、包的作用二、创建包三、import 关键字四、package 的目录结构五、设置 CLASSPATH 系统变量 前言 为了更好地组织类&#xff0c;Java 提供了包机制&#xff0c;用于区别类名的命名空间。 一、包的作用 把功能相似或相关的类或接口组织在同一个包中&#xff…

Android 性能优化之黑科技开道(二)

3. 其它可以黑科技优化的方向 3.1 核心线程绑定大核 3.1.1 定义 核心线程绑定大核的思路也很容易理解&#xff0c;现在的 CPU 都是多核的&#xff0c;大核的频率比小核要高不少&#xff0c;如果我们的核心线程固定运行在大核上&#xff0c;那么应用性能自然会有所提升。 核…

C++相关概念和易错语法(8)(匿名对象、构造+拷贝构造优化、构造析构顺序)

1.匿名对象 当我们实例化对象后&#xff0c;有的对象可能只使用一次&#xff0c;之后就没用了。这个时候我们往往要主动去析构它&#xff0c;否则会占着浪费空间。但是如果遇到大量的这种情况&#xff0c;我们并不想每次都去创建对象、调用、析构&#xff0c;这样会写出很多重…

软考 系统架构设计师系列知识点之大数据设计理论与实践(15)

接前一篇文章&#xff1a;软考 系统架构设计师系列知识点之大数据设计理论与实践&#xff08;14&#xff09; 所属章节&#xff1a; 第19章. 大数据架构设计理论与实践 第4节 Kappa架构 19.4.5 常见Kappa架构变型 1. Kappa架构 Kappa是Uber提出的流式数据处理架构&#xff0…

传统与创新的交响:『线上求签祈福』游戏案例赏析

Part1. 设计背景 在当代社会&#xff0c;寺庙文化正经历一场复兴&#xff0c;尤其受到年轻一代的热烈欢迎。无论是在传统的节假日还是平日里&#xff0c;寺庙总是吸引着众多年轻人前来&#xff0c;他们怀着虔诚的心祈求平安健康或财富好运。在面对生活中难以抉择或无法掌控的情…

JAVA-服务器搭建-创建web后端项目

首先打开IDEA 点击新建项目 写好名称-模板选择 Web应用程序 -语言选择 Java 构建系统选择 Maven 然后点击下一步 选择版本-选择依赖项 Web Profile 点击创建 点击当前文件-选择编辑配置 选择左上角的加号-选择Tomcat服务器-选择本地 点击配置-选择到Tomcat目录-点击确定 起个…

创建会计凭证:BAPI_ACC_DOCUMENT_POST 增强字段

创建会计凭证&#xff1a;BAPI_ACC_DOCUMENT_POST 增强字段 在ABAP程序中使用BAPI_ACC_DOCUMENT_POST的时候&#xff0c;如果有些字段在Tables参数中没有&#xff0c;比如&#xff0c;现在大家都用Reason code来作为现金流量表的表现方案。但是在BAPI_ACC_DOCUMENT_POST的acco…

Java新特性(jdk8)

第一章-lambda表达式 1.函数式编程思想和Lambda表达式定义格式 1.面向对象思想: 强调的是找对象,帮我们去做事儿 比如:去北京 -> 强调的是怎么去,火车,高铁,飞机,汽车,自行车,腿儿 2.jdk8开始有了一个新的思想:函数式编程思想: 强调的是结…

FreeRTOS之任务挂起和恢复

1.本文介绍FreeRTOS的任务挂起和恢复函数。任务删除后将不再存在&#xff0c;不能恢复&#xff0c;而任务挂起是暂停任务&#xff0c;可以通过调用函数进行恢复。FreeRTOS任务挂起和恢复的主要步骤如下&#xff1a; &#xff08;1&#xff09;将相关的宏定义设置为1&#xff1…

OPAM模型(细粒度图像分类)

OPAM模型&#xff08;细粒度图像分类&#xff09; 摘要Abstract1. OPAM1.1 文献摘要1.2 细粒度图像分类1.3 研究背景1.4 OPAM模型创新点1.5 OPAM模型1.5.1 补丁过滤1.5.2 显着性提取1.5.3 细粒度区域级注意模型对象-空间约束方法&#xff08;Object spatial constraint&#xf…