chrome

您所在的位置:网站首页 8位alu输出 chrome

chrome

2023-05-28 09:25| 来源: 网络整理| 查看: 265

1、ALU

ALU 就是计算机里负责运算的组件, 用于有意义的处理数字,比如把两个数字相加。基本其他所有部件都用到了它。ALU 有 2 个单元,1 个算术单元和 1 个逻辑单元。

2、第一个ALU

英特尔 74181,发布于1970 年,是第一个封装在单个芯片内的完整 ALU。

3、制作算术单元

"算术单元",它负责计算机里的所有数字操作,比如加减法,增量运算(给某个数字+1)。

原料: AND,OR,NOT 和 XOR 逻辑门。

目的:最简单的加法电路, 例如: 2 个 bit 加在一起(bit 是 0 或 1)

思路:有 2 个输入:A 和 B; 1 个输出:A、B两个数字的和。 (注意的是:A, B, 输出,这3个都是单个 Bit ( 0 或 1 ))

输入只有四种可能:(1)前三种可能是: 0 + 0 = 0 , 1 + 0 = 1 , 0 + 1 = 1。特点:这三种的输入和输出,和 XOR 门的逻辑完全一样,所以可以把 XOR 用作 1 位加法器(adder)。实现:XOR门

(2)第四个可能, 1+1=2,是个特例;特点:二进制里没有 2。二进制 1+1 的结果是0,1进到下一位,和是 10 (二进制)。XOR 门的输出,只对了一部分, 1+1 输出 0,需要一根额外的线代表 "进位"。实现:XOR门 + AND门只有输入是 1 和 1 时,进位才是 "true"。使用两个逻辑门抽象成组件 "半加器" 。

半加器:特点:两个输入 A 和 B 都是 1 位 ,两个输出 "总和" 与 "进位"

全加器:

背景:如果想处理超过 1+1 的运算,半加器 输出了进位,意味着,我们计算之后每一列的时候,我们得把3 个位加在一起,并不是 2 个。这就需要"全加器"。特点:有 3 个输入:A, B, C (都是 1 个 bit);最大的可能是 1 + 1 + 1"总和"1, "进位"1 , 要两条输出线: "总和"和"进位"。。实现:可以用 半加器 做 全加器先用半加器将 A 和 B 相加,然后把 C 输入到第二个半加器,最后用一个 OR 门检查进位是不是 true。

8位行波进位加法器:

溢出:如果第 9 位有进位,代表着 2 个数字的和太大了,超过了 8 位,这叫 "溢出" (overflow)。特点:两个数字的和太大了,超过了用来表示的位数。如何避免溢出:可以加更多全加器,可以操作 16 或 32 位数字,让溢出更难发生,但代价是更多逻辑门和更长的时间(因为每次进位都要一点时间)。

超前进位加法器:更快,但是原理是一样的 ,都是 把二进制数相加。

各种ALU的区别:简单的 ALU :该类ALU没有专门的电路来处理乘法和除法,而是把乘法用多次加法来实现。例如: 12x5,这和把 "12" 加 5 次是一样的,所以要 5 次 ALU 操作来实现这个乘法。很多简单处理器都是这样做的,比如恒温器,电视遥控器和微波炉。更好的处理器:比如笔记本和手机中,有专门做乘法的算术单元,乘法电路比加法复杂,但只是更多逻辑门。

4、逻辑单元

逻辑单元执行逻辑操作,比如之前讨论过的 AND,OR 和 NOT 操作,它也能做简单的数值测试,比如一个数字是不是负数。

5、ALU的抽象

(1)使用 大 “”表示ALU(2)8 位 ALU 的输入与输出

两个输入:A和B,都是 8 位 (bits); 操作代码:用 4 位的操作代码告诉 ALU执行什么操作。例如加法或减法,"1000"可能代表加法命令 ,"1100"代表减法命令。 输出结果: 8 位。 一堆标志位:输出一堆标志(Flag),"标志"是1位的,代表特定状态。例如:如果想知道A 是否小于 B,可以用 ALU 来算 A 减B,看负标志是否为 true,如果是 true,我们就知道 A 小于 B。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3