(一)学习C#之浮点类型float小结
类型: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小结的更多相关文章
- python使用浮点类型float计算后,数值不对_20180827
在练习时,输入如下代码: 结果不准确. 原因:https://blog.csdn.net/bitcarmanlee/article/details/51179572 浮点数一个普遍的问题就是在计算机的 ...
- 学习记录 java 值类型和引用类型的知识
1. Java中值类型和引用类型的不同? [定义] 引用类型表示你操作的数据是同一个,也就是说当你传一个参数给另一个方法时,你在另一个方法中改变这个变量的值, 那么调用这个方法是传入的变量的值也将改变 ...
- Java中浮点类型的精度问题 double float
要说清楚Java浮点数的取值范围与其精度,必须先了解浮点数的表示方法与浮点数的结构组成.因为机器只认识01,你想表示小数,你要机器认识小数点这个东西,必须采用某种方法.比如,简单点的,float四个字 ...
- 使用头文件cfloat中的符号常量获知浮点类型数据的表数范围---gyy整理
使用头文件cfloat中的符号常量获知浮点类型数据的表数范围 cfloat头文件包含了系统的浮点数的长度限制 头文件climits中的符号常量是获知整型数据的表数范围,并不能获取浮点类型数据的表数范围 ...
- java学习笔记01--数据类型
java学习笔记01--数据类型 java数据类型划分 分为两大类型: 1)基本数据类型:类似于普通的值. 2)引用数据类型:传递的是内存的地址. 浮点类型实际上就是表示小数. java基本数据类型 ...
- Hadoop学习笔记—5.自定义类型处理手机上网日志
转载自http://www.cnblogs.com/edisonchou/p/4288737.html Hadoop学习笔记—5.自定义类型处理手机上网日志 一.测试数据:手机上网日志 1.1 关于这 ...
- MySQL类型float double decimal的区别
语法 MySQL 浮点型和定点型可以用类型名称后加(M,D)来表示,M表示该值的总共长度,D表示小数点后面的长度,M和D又称为精度和标度,如float(7,4)的 可显示为-999.9999,MySQ ...
- C#学习笔记之值类型与引用类型
[TOC] C#学习笔记之值类型与引用类型 1.值类型与引用类型 1.1 深层区别 值类型与引用类型有不同的内存分布,这导致了不同的内存管理机制: 值类型由OS负责内存管理 引用类型由垃圾回收器(GC ...
- java 基础 浮点类型
1.浮点类型用于表示小数的数据类型. 2.浮点数原理:也就是二进制科学计数法. 3.Java的浮点类型有float和double两种. 4.Java默认浮点类型计算的结果是double类型,字面量也是 ...
随机推荐
- 巧用system函数个性化屏幕显示
函数名:system 功 能: 发出一个DOS命令 用 法: system("DOS命令"); (system函数需加头文件<stdlib.h&g ...
- svn团队环境
1.安装VisualSVN Server VisualSVN-Server-3.3.1-x64.msi 下载,并安装标准版(免费) 2.下载TortoiseSVN TortoiseSVN-1.8.11 ...
- 我的PHP之旅--XML初步
什么是XML? XML是可拓展标记语言,它和XHTML很像.但它和XHTML的目的性不一样,XHTML负责展示数据,而XML负责保存或交换传输数据. 而且XML可拓展,它没有固定的标签.它的标签可以自 ...
- ios 8和iOS 9 适用的uidatepicker
UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"\n\n\n\n\n\n ...
- 过长文字自动换行的技巧 Word-Break Word-Wrap
在很多时候,为了防止内容过长把表格或容器撑破, 我们都需要为容器加上自动换行的功能. 实现自动换行,用CSS来实现,通常有两种方式: word-break: 取值为 normal, break-all ...
- CQRS学习——Dpfb以及其他[引]
[Dpfb的起名源自:Ddd Project For Beginer,这个Beginer自然就是博主我自己了.请大家在知晓这是一个入门项目的事实上,怀着对入门者表示理解的心情阅读本系列.不胜感激.] ...
- spoj 42
简单题 水水~~ /************************************************************************* > Author: x ...
- Nagios3完整配置文档
第一章:简单快速安装nagios 1.1 准备软件包 在做安装之前确认要对该机器拥有root权限. 确认你安装好的linux系统上已经安装如下软件包再继续. Apache GCC编译器 GD库与开发库 ...
- 【Mysql进阶技巧(1)】 MySQL的多表关联与自连接
自连接 测试数据准备 CREATE TABLE `t2` ( `id` int(11) NOT NULL, `gid` char(1) DEFAULT NULL, `col1` int(11) DEF ...
- orm框架的学习mybatis
1.数据库中的每张表,对应代码 中一个pojo类. 2.or映射是在mapper.xml文件中,指定resultType.可以指定已经定义的pojo类. 3.可以利用paramaterType指定sq ...