一、
阶码:移码表示(便于比较大小)
尾数:补码表示(保持加减运算规则)
尾符:S(首1负,首0正)
尾数:M
基数:2、4、8……
阶码:E(首1正,首0负)
浮点数=(-1)^S * M * 基数^E
二、
四字节单精度32位:
S位数=1
E位数=8
M位数=23
基数位数(默认2)
最大正数:(-1)^0 * 11111111111111111111111 * 2^11111111
最小正数:(-1)^0 * 00000000000000000000001 * 2^00000000
最大负数:(-1)^1 * 00000000000000000000000 * 2^11111111
最小负数:(-1)^1 * 11111111111111111111111 * 2^00000000
八字节双精度64位:
S位数=1
E位数=11
M位数=52
基数位数(默认2)
最大正数:(-1)^0 * 1…52个1…1 * 2^1 …11个1… 1
最小正数:(-1)^0 * 0 …51个0… 01 * 2^0 …11个0… 0
最大负数:(-1)^1 * 0 …52个0… 0 * 2^1 …11个1… 1
最小负数:(-1)^1 * 1 …52个1… 1 * 2^0 …11个1… 0
三、
1、需注意最大正数与最大负数相加不为0,因为补码表示下,负数总比正数多1个
2、浮点数加减法计算:先计算位差,根据位差调整尾数,最后进行运算