一、不带符号的原码乘法

运算规则:设置数值位为n的两个乘数用原码表示的定点数
【X】=Xf Xn-1…… X1 X0
【Y】=Yf Yn-1…… Y1 Y0
乘积【Z】 =(X⊕Y)+(Xn-1……X1X0)(Yn-1……Y1Y0)

  1. 机器字长为n位,两个n位数相乘,乘积可能为2n位。
  2. 只有两个操作数加法器不能将n个位积一次相加。

二、带符号的补码乘法

方法一:(详细)将补码转换成原码,再用不带符号的乘法阵列器
方法二:设计一种直接用补码进行乘法计算的新型乘法器






三、不带符号的乘法阵列器

首先设A,B是两个不带符号的二进制整数,
A=am-1……a1a0 (m位)
B=an-1 ……a1a0 (n位)

数值分别为a、b,
在这里插入图片描述
这时候A,B相乘就会出现m+n位的乘积P,
P=pm+n-1 ……p1p0 (m+n位)
在这里插入图片描述
在这里插入图片描述
举例说明:
在这里插入图片描述

对同一行的数据进行并行相加,原理如下:
在这里插入图片描述

在这里插入图片描述

四、带符号的乘法阵列器

这里详细说的方法是:将补码转换成原码,再用不带符号的乘法阵列器。

下图中,
a0-3 表示要求的补码的数值,E表示补码的符号位,而下面输出的a0-3 * 表示转化后的原码。
这个电路也叫对2求补电路,原理是按位扫描技术

如果你想深入了解对2求补电路
对2求补电路

按位扫描技术

在这里插入图片描述

注释:
①C-1 =0
②Ci=Ci-1+ai
③ai* =ai ⊕ECi-1 (0 ≤ i ≤ n-1)

在这里插入图片描述
在这里插入图片描述
电路表示:
在这里插入图片描述

步骤:
①两个乘数分别输入n位算前求补器
②an和bn (两乘数的符号位)分别作为两个求补器的控制信号,决定求补码的结果
③将两个乘数的补码传入n×n位不带符号的乘法阵列器
④将两符号位an和bn 进行异或运算(an⊕bn)得到乘积的符号位p2n
⑤将符号位p2n作为控制信号传入2n位算后求补器,求得乘积的补码

举例:
在这里插入图片描述

五、直接补码阵列乘法器

如果对两个补码直接进行乘法运算,唯一要注意的就是要把补码的符号位看作一个负权,其余的运算操作和上面完全一样。
设两个乘数A,B是5位的二进制补码
A = ( a4 ) a3 a2 a1 a0(( a4 )为负权=-a4
B = ( b4 ) b3 b2 b1 b0(( b4 )为负权=-b4

在这里插入图片描述
其中带括号的都表示负权,譬如说:
(a4b0)= -a4b0
最后P为所求结果。

举例:
在这里插入图片描述

一般化的全加器形式分类(根据输入端负权的个数):
①0类加法器(无负权) 三个加数无负权
②1类加法器(Z,S为负权) 三个加数只有一个负权
③2类加法器(X,Y,C为负权) 三个加数有两个负权
④3类加法器(X,Y,Z,C,S为负权) 三个加数全为负权
在这里插入图片描述

全加器的设计

首先列出真值表,求出表达式,之后照着表达式就连出来了。
由于1,2类加法器的真值表完全相同,所以放在一起说:
S=XYZC=

①1类加法器真值表
在这里插入图片描述
②2类加法器真值表
在这里插入图片描述



在这里插入图片描述

③0类加法器真值表
在这里插入图片描述
④3类加法器真值表
在这里插入图片描述
举例说明:
在这里插入图片描述

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐