浮点数的一些简单表示规则

  浮点型数据是用来表示具有小数点的实数de。在c中,实数是以指数形式存放在储存单元中的。一个实数表示为指数可以有不止一种形式,如3.14159×10^0,0.314159×10^1……它们代表的是同一个值。可以发现,小数点的位置改变从而改变了指数的值,就不改变它们值的大小。由于小数点的位置可以浮动,所以实数的指数形式称为浮点型。

     浮点型的类型包括float(单精度浮点型)double(双精度浮点型)long double(长双精度浮点型)。

     float(单精度浮点型)。编译系统为float分配了四个字节大小的空间。每个字节八个bit。一共有32个比特,第一个比特位是符号位,中间八位是移吗,后23位是尾码。简单的表示就是1+8+23的形式。

    例如:12.25的浮点表示

                    先将12.25化成二进制  12.25→1100.001 *这里要注意的是小数点的移动,移动到第一个1的后面,这里需要往左边移动,一般参考的是给127加减,左移需要给127加上小数点的移动个数。127是怎么来的,是老师上课讲的。

                    127的二进制   0  0 111  1111

                                                   +

                      3的二进制       0 000   0011

                                 =         0 1 000   0010    ( 100  001)/*将小数点移动后的剩余的补上 0000000

                           十六进制   0x41 43 00 00     But 在c中都会把单精度转化位双精度来计算。(就是进行编译时浮点型常量都会被系统按照双精度处理)

      double(双精度浮点型)和单精度类似  ,只不过双精度是8个字节,简单的表示就是1(符号位)+11(移码位)+52(尾码位)基本上与float是类似的。long double分配了十六个字节。

我目前知道的就这点。以后会的会往里面加。

                                            



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值