c学习指南吧 关注:731贴子:1,800
  • 7回复贴,共1

小数的表示:定点小数与浮点小数

只看楼主收藏回复

小数有两处表示方法,float/double,都属于浮点型表示。
下面,先介绍另一种表示方法:定点型小数。fixed-point
例如,以一个字节表示小数,小数点定在5.3位置,高5位表示整数,低3位表示小数。
11001001
加上小数点之就是11001.001即整数部分为11001,小数部分为001
转换一下
整数部分 11001 = 25
小数部分 001 = 1 (分子),分母是1000(8),所以就是1/8
最终此小数表示的是 25 + 1/8
可见,定点型小数的值取决于你把小数点定在哪里。
而浮点型小数的表示格式比较复杂,我有一篇博文专门说明了。对于初学者来说,建议不要这么深入,而是要抓紧视频里的主线,把主要的东西学好。


IP属地:北京1楼2015-09-11 21:34回复
    float/double都是浮点型,float-point


    IP属地:北京2楼2015-09-11 21:37
    回复
      老师,为什么分母是1000?


      3楼2015-10-13 11:00
      回复
        二进制的1000,刚好是8啊,从而小数项为1/8
        也就是说,存0/8, 1/8, 2/8, ..., 7/8 共八个档,表示精度为1/8


        IP属地:北京4楼2015-10-13 11:05
        收起回复
          0.001=1/1000


          来自iPhone客户端5楼2015-10-20 20:01
          收起回复


            来自iPhone客户端6楼2015-10-21 07:54
            回复