类型:float

大小:32位

范围a:±3.4E38  MSDNhttp://msdn.microsoft.com/zh-cn/library/b1e65aza.aspx

范围b: ±1.5E45~±3.4E38  来源:C#本质论5.0一书 不知道±1.5E45怎么得来的?

BCL名称:System.Single

有效数字:7

后缀:F或f

float值在内存中是以科学计数法方式存储,从左向右是高字节到低字节,最左一位为第31位,最右一位为第0位。

SEEE EEEE EMMM MMMM MMMM MMMM MMMM MMMM

1.第31位S表示符号位,值为0或1,0表示正号,1表示负号;

2.第23位~30位E是指数部分,指数部分主要表示值的大小;

  (1)若S为0,指数部分越大,值越大;若S为1,指数部分越大,值越小。也就是说,指数部分越大,取值范围越大;

  (2)因为指数范围是-127~128,float的范围:-2^128~+2^128,即-3.4028236692094 * 10 38~+3.4028236692094 * 10 38,简写为:-3.4E38~+3.4E38

3.第0位~22位M是尾数部分,尾数部分主要表示值的精度

  (1)float精度由尾数位数决定,有效数字为7位,即精度为7位。

  (2)二进制中尾数部分有23位,最大值为:1111 1111 1111 1111 1111 111,转换为十进制为:2^23-1= 8388607,刚好7位。

4.特殊表示:

  1 11111111 尾数的23位不全为0: 表示不是数值 
   
1 11111111 00000000000000000000000: 表示负无穷大.比最小负数还小的数都视为负无穷大. 
  1 11111110 11111111111111111111111: 表示最小的负数,即-2^128=-3.4*10^38 
   
1 00000001 00000000000000000000000: 表示最大的负数,即-2^(-126)=-1.18*10^(-38) 
   
0 00000000 00000000000000000000000: 表示0 
    0 00000001 00000000000000000000000: 表示最小的正数,即2^(-126)=1.18*10^(-38) 
   
0 11111110 11111111111111111111111: 表示最大的正数,即2^(128)=3.4*10^(38) 
  0 11111111 00000000000000000000000: 表示正无穷大,比最大正数还大的数都视为正无穷大. 
   
0 11111111 尾数的23位不全为0: 表示不是数值

故,float型数据的表示范围包括: 
     
负无穷大; -3.4*10^38<x<-1.175*10^(-38); 0; 1.175*10^(-38)<x<3.4*10^38; 正无穷大.

(一)学习C#之浮点类型float小结的更多相关文章

  1. python使用浮点类型float计算后,数值不对_20180827

    在练习时,输入如下代码: 结果不准确. 原因:https://blog.csdn.net/bitcarmanlee/article/details/51179572 浮点数一个普遍的问题就是在计算机的 ...

  2. 学习记录 java 值类型和引用类型的知识

    1. Java中值类型和引用类型的不同? [定义] 引用类型表示你操作的数据是同一个,也就是说当你传一个参数给另一个方法时,你在另一个方法中改变这个变量的值, 那么调用这个方法是传入的变量的值也将改变 ...

  3. Java中浮点类型的精度问题 double float

    要说清楚Java浮点数的取值范围与其精度,必须先了解浮点数的表示方法与浮点数的结构组成.因为机器只认识01,你想表示小数,你要机器认识小数点这个东西,必须采用某种方法.比如,简单点的,float四个字 ...

  4. 使用头文件cfloat中的符号常量获知浮点类型数据的表数范围---gyy整理

    使用头文件cfloat中的符号常量获知浮点类型数据的表数范围 cfloat头文件包含了系统的浮点数的长度限制 头文件climits中的符号常量是获知整型数据的表数范围,并不能获取浮点类型数据的表数范围 ...

  5. java学习笔记01--数据类型

    java学习笔记01--数据类型 java数据类型划分 分为两大类型: 1)基本数据类型:类似于普通的值. 2)引用数据类型:传递的是内存的地址. 浮点类型实际上就是表示小数. java基本数据类型 ...

  6. Hadoop学习笔记—5.自定义类型处理手机上网日志

    转载自http://www.cnblogs.com/edisonchou/p/4288737.html Hadoop学习笔记—5.自定义类型处理手机上网日志 一.测试数据:手机上网日志 1.1 关于这 ...

  7. MySQL类型float double decimal的区别

    语法 MySQL 浮点型和定点型可以用类型名称后加(M,D)来表示,M表示该值的总共长度,D表示小数点后面的长度,M和D又称为精度和标度,如float(7,4)的 可显示为-999.9999,MySQ ...

  8. C#学习笔记之值类型与引用类型

    [TOC] C#学习笔记之值类型与引用类型 1.值类型与引用类型 1.1 深层区别 值类型与引用类型有不同的内存分布,这导致了不同的内存管理机制: 值类型由OS负责内存管理 引用类型由垃圾回收器(GC ...

  9. java 基础 浮点类型

    1.浮点类型用于表示小数的数据类型. 2.浮点数原理:也就是二进制科学计数法. 3.Java的浮点类型有float和double两种. 4.Java默认浮点类型计算的结果是double类型,字面量也是 ...

随机推荐

  1. Oracle的Export用法

    Oracle 的 Export 命令用于导出数据库信息,既可以导出表结构,也可以导出数据,表空间,或者按用户导出等等.按照通常的说法,该命令主要是用于数据库的迁移或者备份的.下面就介绍一下该命令的部分 ...

  2. 进程、线程、GDI+、XML、委托

    进制 表示某一位置上的数运算时是逢X进一位.二进制就是逢二进一, 十进制是逢十进一,十六进制是逢十六进一,以此类推. so:二进制001010101只有0和1计算机中的数据都是二进制表示,四进制以0. ...

  3. ios 基于CAEmitterLayer的雪花,烟花,火焰,爱心等效果demo(转)

    转载自:http://blog.csdn.net/mad2man/article/details/16898369 分类: cocoa SDK2013-11-23 11:52 388人阅读 评论(0) ...

  4. 【BZOJ 1295】 [SCOI2009]最长距离

    Description windy有一块矩形土地,被分为 N*M 块 1*1 的小格子. 有的格子含有障碍物. 如果从格子A可以走到格子B,那么两个格子的距离就为两个格子中心的欧几里德距离. 如果从格 ...

  5. python学习笔记6(字典)

    映射:键值对的关系,键(key)映射值(value) 字典是Python唯一的映射类型 >>> phonebook = {'} >>> phonebook {'} ...

  6. Apache2.2+php5.4在windows上配置实例

    这几天一直在win8.1上配置apache+php环境,网上看了很多文章,自己又犯了很多错误才配置成功,对新手来说真是有点小难. 自己打算把配置的详细过程写下来,好帮助其他新手快速配置. 在这里参考了 ...

  7. mybatis--面向接口编程

    如果使用hiberante作为dao层,常用的方式是:定义一个dao层接口包(com.dao.service)然后在定义一个dao层接口实现包(com.dao.service.impl),这样定义结构 ...

  8. 你不需要jQuery(三):新AJAX方法fetch()

    XMLHttpRequest来完成ajax有些老而过时了. fetch()能让我们完成类似 XMLHttpRequest (XHR) 提供的ajax功能.它们之间的主要区别是,Fetch API 使用 ...

  9. asp.net MVC日志插件Log4Net学习笔记一:保存日志到本地

    log4net(Log For Net)是Apache开源的应用于.Net框架的日志记录工具,详细信息参见Apache网站.它是针对Java的log4j(Log For Java的)姊妹工具.用过lo ...

  10. STL,ATL,WTL之间的联系和区别

    STL即 Standard Template Library (标准模板库) STL是惠普实验室开发的一系列软件的统称.它是由Alexander Stepanov.Meng Lee和David R M ...