算术运算单元

  【写在前面:希望我的朋友能看见。】
算术运算单元
2007 年7月6日
16:42
 
电子设备能够完成数字逻辑的运算。假如我们用低电平标识逻辑的假,用高电平表示逻辑的真。我们就可以设计这样的电子设备,给它三个接线脚,其中两个接线脚用来接输入电平,一个接线脚用来接输出电平。这个电子设备能够对输入的电平给出它们的逻辑与运算的结果,并输出到输出脚上。同样也可以制造其他的有两个输入一个输出(二元)的逻辑运算设备。将两个这样的二元设备可以组合成一个三元设备。当然也可以有一元设备,如取反逻辑设备。把这些逻辑设备的输入输出脚可以组合成更复杂的逻辑运算。
 

 
 
 
如果我们规定或者就认为,逻辑真就是 1 ,逻辑假就是 0 。那么我们就可以设计出算术运算单元了。如我们用逻辑异或设备,就可以设计出二进制加法运算单元。很容易验证有:
1+1 = 0;
1+0 = 1;
0+1 = 1;
0+0 = 0;
 
我们将这样的一个接线脚成为一个位 (bit, 比特 ). 这里需要注意一个概念,加数是对称的。所谓对称的就是将两个加数交换位置后结果是不会有任何变化的。这和加法的交换律是完全吻合的。这样做验证的时候就可以少验证一个 0+1=1 了,因为交换加数后和 1+0=1 是一样的,已经验证过了。
 
下面我们再设计一个有两位二进制数运算的能力的算术运算单元。
如图,我们用三个一位的加法单元,和一个与单元就组成了一个二位的加法设备。加数有 a,b ,输出的结果 c 。这个也很容易验证 ( 注意, a b 是对称的。 ).
同样的道理,我们可以设计更多位的加法运算设备。通常我们说的 16 位数据处理器,或者 32 位数据处理器就是指这个了。
我们把 8bit 称为一个字节 (byte).
 
如果我们有一个 8 位的加法单元。那么我们就可以计算任意两个字节的加数的和了。溢出部分暂时不考虑的话。
 
接下来我们再来看看乘法运算的性质。同样我们考虑二进制运算。事实上,对于二进制的乘法运算就是移位的操作。什么是移位呢?假如我们有这么一个字节的二进制数 00110101, 将这个数的每一位向左移动一位,最右边补 0 ,左边就有一位溢出了。我们得到 0110101. 得到的数是原来数乘 2 的结果。也就是说,二进制乘法是移位操作。
 
在电子计算机中,我们将溢出部分都考虑进去后,就可以正确的处理简单的算术运算了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值