有关与浮点数表示的问题
为什么float a=0xffc00000。a等于-4194304 0xffc00000 这是一个十六进制数换算成二进制应该是:
1111 1111 1100 0000 0000 0000 0000 0000
按照一个float 32位来计算,转换为10进制等于:
第一位是符号位是1那注定这个数是个负数, 所以取反加1变成:
取反:0000 0000 0011 1111 1111 1111 1111 1111
加一:0000 0000 0100 0000 0000 0000 0000 0000
转换为十进制为:4194304加上负号: -4194304
原来是这样,是我想复杂了,我还以为里面包含了阶码之类的
页:
[1]