数字电路自学(2022.3.21)->数制+二进制的算术运算
- 各进制数的转化
A.十进制转化成其他进制:位数*位权
B.其他进制转换成十进制(Decimal):
a.整数部分:除基取余,逆序排列
b.小数部分:乘基取整,顺序排列(具体操作见图1)
C.二进制(Binary)转化成16进制(Hexadecimal)或8进制(Octal),每4位(八进制3位)转化成为十六进制(八进制)数,整数的最高位不足要补0,小数的最低位不足也要补0
D.其他特殊的转化:3进制转化成5进制->3进制先转化成十进制,十进制再转化成5进制;8进制转化成16进制:8进制先转化为2进制,2进制再转化成16进制
E.对于大的十进制数 转化成其他进制数,用除基法可能步骤较为冗长,可以改用拆数法(见下图2)
- 二进制数的算术运算
A.无符号数的±×/与十进制数的±×/一样,具体见图3
B.有符号数的±运算:利用补码进行运算
a.符号位:在所运算的数值前加一位,表征其符号的正负。正数为0,负数为1,
b.原码:即直接有十进制转化成二进制的数,也被称为真值,对于正数而言,其原码、反码和补码都一样,等于其真值
c.反码:正数的反码=其原码,负数的反码等于其原码所有位取反
d.补码:正数的补码=其原码,负数的补码=其原码取反+1
所有位取反
d.补码:正数的补码=其原码,负数的补码=其原码取反+1
注:计算机加减运算出来的结果是补码的形式,要得到其十进制的值需要转化为原码:如果符号位为0,说明该数值已经是原码,可以直接转化,符号位为1,需要对该数数值部分取反+1,得到其原码