算术运算单元
来源:互联网 发布:金庸天才知乎 编辑:程序博客网 时间:2024/05/16 08:27
【写在前面:希望我的朋友能看见。】
算术运算单元
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的结果。也就是说,二进制乘法是移位操作。
在电子计算机中,我们将溢出部分都考虑进去后,就可以正确的处理简单的算术运算了。
- 算术运算单元
- 算术运算
- 算术运算
- 算术运算
- 算术运算
- 算术运算
- 算术运算
- 算术运算
- 算术运算
- 算术运算、关系运算
- 算术运算和算术表达式
- 算术运算符
- Command 35 算术运算
- 二 算术运算指令
- 算术运算符
- 万能算术运算
- 指针算术运算
- 算术运算符
- 搜索引擎的输入自动补全功能
- 浅谈一下如何使用CLI监查Asterisk的运行
- upgrade mingw32 to gcc 4.2.0
- 月入千美金不是梦-ADSENSE高收入实战及分析
- 发布MEDC EAA 402课程资源:SQL Server 2005 Compact Edition程序设计与性能优化
- 算术运算单元
- 利用SimpleTagSupport创建定制标签
- linux 对目录及下载的简命令要
- ldd命令 查看程序所依赖的共享库。
- [Netadvantage:Combo+DropDown]如何根据下拉框选中的数据获取相关的数据
- CTI技术常见名词解释
- Sql Server企业管理器MMC 不能打开
- Google AdSense与广告发布商间的合同关系分析
- JDK1.6新特性