第8节:数的表示与运算
1、每乘以2相当于被乘数左移一位;每除以2相当于被除数右移一位;
2、有符号数最高位是符号位,0表示正数,1表示负数,表示方法用三种源码、补码、反码。计算机底层无法识别有符号数与无符号数。
原码:符号位+绝对值(0的原码不唯一);
反码:正数的反码就是原码,负数的反码符号位不变,数值部分按位取反
补码:正数的补码喝原码反码一样,负数的补码为原码符号位不变,其余部分按位取反后+1,即原码+1;(补码实现将减法运算转化为加法运算)
eg: X+Y的补码=X的补码+Y的补码; X-Y的补码=X的补码+(-Y)的补码
现代计算机成熟设计时,负数可以用“-”表示,由编译系统将其转化为补码
3、特殊数10000000
对于无符号数(10000000)=128;在原码中定义为1000000=0;
在反码中定义为10000000=-127;在补码中定义为10000000=-128;
4、无符号数加减运算溢出判断方法:当最高位向更高位有仅为或者借位时则产生溢出
有符号数溢出判断方法:两个有符号数相加或者相减时,结果最高位或者次高位进位或者借位状态不一样是溢出了,一样则是未溢出。(用异或计算即可)
5、计算机中的符号数默认以补码的形式表示,注意!由于负数的补码≠原码,所以负数的补码≠符号位+绝对值 (负数的原码等于负数的补码再取补码)
第11节基本逻辑运算与逻辑门
1、与或非门,只有非门是单目运算符。
2、与非门:与非逻辑(输入全部为1是输出为0,其他情况输出为1)
或非门:或非逻辑(输入全部为0输出为1,其余情况输出为0)
异或门:或非逻辑(输入状态相同输出为0,输入状态相异输出为1)
同或门:同或逻辑(输入状态相同输出为1,输入状态相异输出为0)