Crash Course CS 学习笔记 Class1-5
1.计算机早期历史(略)
2.电子计算机(略)
3.布尔逻辑与逻辑门
NOT,AND,OR,XOR
4.二进制
8位二进制数->8bits(位)=1byte(字节)
浮点数表示法(IEEE)
字符与编码
ASCII码,8位 unicode,16位
5.算数逻辑单元(ALU)
ALU包含算数单元与逻辑单元
算数单元
考虑两个一位二进制数相加:0+0=0,0+1=1,1+0=1,1+1=10
发现除进位以外符合xor门
考虑外加电路输出进位,即input1,1输出进位1,显然外接and门,实现半加器。
考虑多位二进制数计算,当目前位有进位时,实际执行的运算是三个一位二进制数相加。首先用一个半加器计算a+b,得到进位carry1与中间和psum,再用一个半加器计算psum+c,得到进位carry2和最终和sum
由于三个一位二进制数相加至多进位1,因此用or门连接carry1与carry2,即只要计算中出现进位,最终结果就含有一位进位。实现全加器。
8位加法器:考虑两个8位二进制数相加,首先用一个半加器计算末位相加,然后用全加器计算接下来每一位与其上一位的进位,实现8位行波进位加法器
值得注意的是,最后一个全加器会输出进位,若输出1,则说明发生了溢出(overflow)
ALU的其他操作
逻辑单元
例如,判断一个数是否为0
封装好的ALU
输入:数A,数B,操作代码
输出:结果,标志(逻辑单元):overflow,zero,nagative等