合聚咖

合聚咖

电脑中关于浮点数的问题

admin

浮点数是指小数点位置可以浮动的数据,通常以下式表示:

E次方

N

=

M·R

其中N为浮点数,M为尾数,E(为阶码也就是多少次方的意思),R为阶的基数,

R一般为2进制(01),8...(01234567),16...(0123456789abcdef),

首先回答你第一个问题,为什么用7位来表示阶码,

因为阶码可以理解成十进制次方数,当然2进制也有次方可言,你说:用7位表示阶码浪费了,那我问你如果叫你表示一个10进制的数1212.1101,如果你没有了阶码就变1.2121101那不是少了1000倍了么!

把上面的式子N

=

M·R

写成N

=

R

·

M这样一来容易理解了吧,我们用10进制来代替二进制把上面1212.1101的写成1212.1101=1.1121101

X

10

所以说你只用1位表示阶码那你不是只能表示10以内的数了么?大的数就无发表示了

虽然电脑里面浮点书不象现实中的10进制,但是你可以这样来理解

第二个问题:为什么尾数不能小于2分之1,0.5是否等于2分之一呢?

在二进制里面只有0和1比如二进制数

1.1=十进制数

1.5

你说人家二进制只能表示0.5

1