无符号数
计算机中的数存放于寄存器中,寄存器位数叫做机器字长
无符号数,没有符号的数,寄存器每一位都用来存放数据
有符号数
符号数字化数叫做机器数,带正负号符号的数为真值
0表示正号 1表示符号 +1100 01100; -1100 11100
原码
整数定义如下,n为整数的位数,x为真值
+1100 0,1100 -1100 1,1100 逗号将符号和数值部分隔开
小数定义
0.1101 0.1101 -0.1101 1,1101 小数点将符号和数值部分隔开
正数的原码为符号位为0,数值部分=真值部分,负数的原码符号位为1,数值部分=真值部分
补码
整数定义
小数定义
正数的补码为原码
负数的补码为原码除符号位其余位取反加一,符号位=1
反码
整数
小数
机器数小结:
最高位为符号位 0正数 1负数 符号位与数值部分正数用逗号隔开 小数用小数点隔开
正数 原码=反码=补码
负数 符号位不变 除符号位取反====》反码 除符号位取反加一====》补码
相反数的补码 所有数位全部取反,然后加一
移码
用补码难以直接判断大小,用移码可以直接判断大小
定点表示
计算机中小数点位置按照约定方式给出
小数点固定在某一位置的数称为定点数
采用定点数的机器称为定点机
Xn为符号位 Xn-1..X1为数值部分
小数点在Xn,Xn-1之间,则为纯小数;小数点在X1右边表示纯整数
定点方式能够表示的数据范围
小数 | 整数 | |
原码 | -(1-2^(-n))~+(1-2^(-n)) | -(2^n-1)~+(2^n-1) |
补码 | -1~+(1-2^(-n)) | -(2^n)~+(2^n-1) |
反码 | -(1-2^(-n))~+(1-2^(-n)) | -(2^n-1)~+(2^n-1) |
浮点表示
数的浮点表示
尾数最高位为1的浮点数称为规格化数
浮点数表示形式
Jf表示阶符,Sf表示数符,m表示浮点数表示数据范围 n表示浮点数表示精度
浮点数表示范围
最小负数 阶码部分最大 尾数部分最大 数符=1
最大负数 阶码部分最小 尾部部分最小 数符=1
最小正数 阶码部分最小 尾数部分最小 数符=0
最大正数 阶码部分最大 尾数部分最大 数符=0
当阶码大于最大阶码时,上溢,产生中断
当阶码小于最小阶码时,下溢,按零值处理
浮点数的规格化
r=2 尾数最高位为1
左规 尾数左移一位 阶码减一 右规 尾数右移一位 阶码加一
r=4 尾数最高2位不全为零
左规 尾数左移2位 阶码减2 右规 尾数右移2位 阶码加2
r=8 尾数最高3位不全为零
左规 尾数左移3位 阶码减3 右规 尾数右移3位 阶码加3