浮点数
计算机中的浮点数是表示小数的一种类型,而浮点数则是用科学计数法来表示的。
对于一个32位的 f l o a t float float 型所保存的数
从左往右第1位保存的是该数字的符号,即符号位(s)
之后8位保存的是该数字的指数,即阶码位(e),这8位用的是移码来保存指数
之后23位用来保存有效数字,即尾数位(m),尾数用原码表示
那么这个浮点数用科学计数法表示出来则是 ( − 1 ) s × 1. m × 2 e (-1)^s \times 1.m \times 2^e (−1)s×1.m×2e。
移码
阶码位使用的是移码来保存指数。
定义: [ x ] 移 = 2 n − 1 + x ( − 2 n − 1 ≤ x < 2 n − 1 ) [x]_移=2^{n-1}+x(-2^{n-1}\leq x < 2^{n-1} ) [x]移=2n−1+x(−2n−1≤x<2n−1), n n n为设定的一个数
一个数用移码来表示的不同处是符号位 1 1 1表示正数, 0 0 0表示负数,之后按位取反末位 + 1 +1 +1。
移码与补码的关系一个数的补码与移码的关系是符号位为相反数