数据类型2_浮点类型
来源:互联网 发布:php弹出提示框 编辑:程序博客网 时间:2024/05/23 00:07
数据类型2_float
1、浮点类型:float、double
120/2 0 60/2 0 30/2 0 15/2 1 7/2 1 3/2 1 1/2 1
2、将一个float型转化为内存存储格式的步骤:
1)先将这个实数的绝对值转化为二进制格式 2)将这个二进制格式实数的小数点左移或右移n位,直到小数点移动到第一个有效数字的右边 3)从小数点右边第一位开始数出二十三位数组存入第22到第0位。 4)如果实数是正的,则在第31位放入0,否则放入1 5)如果n是左移得到的,说明指数是正的,第30位放入1,如果n是右移得到的或n=0则30位放0 6)如果n是左移得到的,则将n减1后化为二进制,并在左边加0补足7位,放入第29到23 如果n是右移得到的或n==0,则将n化为二进制后在左边加0补足,再各位求反,放到29到23位。
8.4
8/2=4 0 0.4*2=0.8 0 4/2=2 0 1.6 1 2/2=1 0 1.2 1举例说明:8.25(1000.01) 1/2=0 1 0.4 0 0.8 0 0.25*2=0.5 0 1.6 1 0.5*2=1 1 1000.01 = 1.00001*2的3次方 小数点向左移动3位,指数为3 1 8 23 0 1 000 00 10 0 0 0 0 1 000000000000000000 正数存0 4104 0000
-8.25
符号 指数 尾数 1 1 000 00 10 0 0 0 0 1 000000000000000000 1:负数 1:左移 3-1 =2 10 1 000 0010 1100 0001 0000 0100 0000 0000 0000 0000 C104 0000
0.25
整数部分 0 二进制 科学 小数 10 0.01 0.01 = 1.0* 2的-2次方 往右移2位 符号 指数 尾数 0 0 111 1101 0000000000 0 右移 -3:FE FF -1 FE-2 FD -3 1111 1110 0 111 1101 -0.25 0011 1110 1000 0000 0000 0000 0000 1011 1110 1000 0000 0000 3E80 0000 BE80 0000
0.5
整数:0 小数 0.5*2=1 1 二进制 0.1 科学 1.0*2的-1次方 符号 指数 尾数 0 0 111 1110 0000000000 0 :右移 -1-1=-2 = FE 1111 1110 0 111 1110 0011 1111 0000 0000 0000 0000 0000 0000 3F00 0000
12.5
二进制:1100.1 正数:12 1100 负数.0.5 科学:1.1001*2^3 12/2 =6 0 0.5*2=1 1整数 先转16进制,然后。。。哈哈 6/2 =3 0 指数:127+x 3/2=1 1 1/2=0 1 符号 指数 尾数 0 1 000 0010 0000000000 正数 1:左移 1001 0000 0000 0000 0000 000 3-1=2 0000 0010 1 000 0010 **127 +3 ==0x82 == 1000 0010** 0100 0001 0100 1000 0000 0000 0000 0000 4148 0000
131: float fNum = 0.25f; 3E80 0000 00411E5E movss xmm0,dword ptr ds:[00415884h] 00411E66 movss dword ptr [ebp-8],xmm0 132: float fNum1 = -0.25f; BE80 0000 00411E6B movss xmm0,dword ptr ds:[004158DCh] 00411E73 movss dword ptr [ebp-14h],xmm0 134: float fNun = 0.5f; 3F00 0000 00411E78 movss xmm0,dword ptr ds:[00415874h] 00411E80 movss dword ptr [ebp-20h],xmm0 135: 136: float fNumz = 8.25f; 4104 0000 00411E85 movss xmm0,dword ptr ds:[004158D8h] 00411E8D movss dword ptr [ebp-2Ch],xmm0 137: float fNumz1 = -8.25f; C104 0000 00411E92 movss xmm0,dword ptr ds:[004158E0h] 00411E9A movss dword ptr [ebp-38h],xmm0
11.75
整数 小数 0.11 11 = B 0.75*2=1.5 1 1011 0.5*2 =1 1 二进制:1011.11 科学:1.01111*2^3 符号 指数 尾数 0 1 000 0010 011 1100 0000 0000 0000 0 :+ 127+3 = 0x82 1000 0010 0100 0001 0011 1100 0000 0000 0000 413C 0000
3自己理解的浮点数
(1)整数部分:转化为16进制,然后转二进制(2)小数部分:*2完了,从上往下看(3)用二进制科学计数表示(4)符号:正数为0,负数为1 尾数:科学计数的小数部分,不足右边补0 指数:方法1:127+指数===转为16进制,填写。 方法2:第一位:左移为1,右移为0,不变为0 后7位:指数-1的值用二进制表示的后7位。 注意:-2 ==FD,-1=FF,用这样看,就不用计算反码了。(5)正数和负数的二进制高位是互补的,低位不变。(6)0.25==3E80 0000 -0.25 == BE80 0000 0.5 == 3F00 0000 11.75== 413C 0000 8.25 ==4104 0000 -8.25==C104 0000
4 小数查询表
5指数快速查询
0 0
- 数据类型2_浮点类型
- 九、基本数据类型-浮点类型
- Java基本数据类型-浮点类型
- 08_浮点类型_浮点数误差问题
- Java基础--基本数据类型(浮点类型)
- MySQL数据类型_数值类型
- MySQL数据类型--浮点数类型和定点数类型
- 浮点数据类型
- mysql的数据类型:整型、浮点型、日期类型、字符型
- C#学习日记06---数据类型 之 浮点数类型
- 数据类型1_简介&类型转换
- 数据类型_类型,变量,成员;以及typedef
- Python基本语法_基本数据类型_序列类型详解
- 浮点类型
- 浮点类型
- 浮点类型
- 2数据类型-引用类型
- mysql整数浮点数据类型
- Android内存优化大全(中)
- 同步时间
- convert命令FAT32转NTFS(不影响硬盘数据)
- 北航机试C语言矩阵问题
- 导出excel
- 数据类型2_浮点类型
- HTML5 canvas 在画布中画出一个时钟
- Android研究院之应用开发线程池的经典使用(二十九)
- 【DSP开发】C6678的中断控制器
- 《数据结构与算法分析——c语言描述》 练习6.32 答案
- Java设计模式(四)代理模式详解
- list::splice()函数详解
- linux无线网络配置
- Windows平台下Eclipse+Pydev搭建Python环境