1.为什么要使用二进制?
数制是表示数值的方法,不同数制仅仅是表示方法不同,并未改变其实质。所以,选取对我们来说简单、成本低的表示方法是很重要的
二进制只有0和1两个数字,可以用开关电路的高低电平表示,所以对于电路电压的稳定性要求也比较低,只要能区分出0和1就能正常工作。
如果使用十进制、八进制之类的,需要区分10个不同的状态,这对于电路的精度、稳定性要求高,至今仍未有人设计出可以实际使用的十进制单元电路。
2.为什么二进制运算要使用补码?
为了更简单的实现减法运算。
如果不使用补码,那么减法的实现应该包含以下步骤:比较两个数绝对值的大小,确定减数和被减数;使用减法电路相减,听上去也不是很麻烦,但补码运算可以使减法运算更加简单,既然有优化后的,为什么不用呢?
a.补码运算是什么?
规定,将二进制数前加一位符号位,正数为0,负数为一,为原码
正数的反码、补码均为原码,负数的反码除符号位外按位取反,加一为补码
b.采用补码运算的加法运算电路
这是一个4位超前进位加法器74HC283,CI为需要进的位,CO为计算后是否进位。
当nF=0时,表示M(m0,m1,m2,m3)与N(n0,n1,n2,n3)相加,N的各位与0异或后均为原值,此时CI=0表示为初始运算,若计算出的CO进位为1,此时sF=1,表示超出最大数值,为0时正常工作,表示为正数
当nF=1时,N各位异或后成为反码,CI=1表示加1,若绝对值M>N,M-N运算,此时CO=1,sF=0,表示和为正;
若绝对值M<N,此时CO=1,sF=0,表示和为负。
3.不同进制的转换
主要是二、八、十、十六进制之间的转换
4.典型例题练习
a.使用补码计算15+9,23-11,-18-2,9-12,7-5
先看需要多少位表示,再加入
符号位,符号位为0时补码等于反码,为1时需要求出原码注意检查十进制转二进制有没有化错