科锐课堂笔记:2017/2/23 浮点小数存储格式
2017-02-23 23:35
495 查看
阶乘100的解题思路用数组存数模拟手工算乘法。(结果值有150多位)
递归比循环效率低多了,能不用就不用。线性问题优先使用循环。
数字后加f表示单精度,不加双精度(对小数而言)。
定点小数优点快速高效,但缺乏灵活性。
单精度浮点小数存储格式(共4字节)如图:
这里需要注意,指数部分存的是指转换成二进制下小数点向右(正向)或向左(负向)移动的次数,以127为起点(127=0),128向右移1,126向左移1以此类推(与其把一个数一切2分正负,还不如用补码表示呢,废劲),小数部分不足23位尾部用0补足对齐。(向后不向前补齐真是反其道而行)
举个例子,十进制的3.25转成浮点数存储,3=11,0.25转二进制方法小数部分不断*2每次取整除部分一直到小数部份为0止,如0.25*2=0.5(取0),0.5*2=1.0(取1),所以0.25=0.01,合起来3.75=11.01,移一下小数位=1.101*10^1,那么它的浮点格式化=(0) (1000 0000) (1010 0000 0000 0000 0000 000) ,表示成16进制为40 50 00 00,当然在小端CPU中反着看就是00 00 50 40。
双精度同单精度一样,只是扩展成8字节,其中指数部分扩大到11位,小数部分扩大到52位。
递归比循环效率低多了,能不用就不用。线性问题优先使用循环。
数字后加f表示单精度,不加双精度(对小数而言)。
定点小数优点快速高效,但缺乏灵活性。
单精度浮点小数存储格式(共4字节)如图:
这里需要注意,指数部分存的是指转换成二进制下小数点向右(正向)或向左(负向)移动的次数,以127为起点(127=0),128向右移1,126向左移1以此类推(与其把一个数一切2分正负,还不如用补码表示呢,废劲),小数部分不足23位尾部用0补足对齐。(向后不向前补齐真是反其道而行)
举个例子,十进制的3.25转成浮点数存储,3=11,0.25转二进制方法小数部分不断*2每次取整除部分一直到小数部份为0止,如0.25*2=0.5(取0),0.5*2=1.0(取1),所以0.25=0.01,合起来3.75=11.01,移一下小数位=1.101*10^1,那么它的浮点格式化=(0) (1000 0000) (1010 0000 0000 0000 0000 000) ,表示成16进制为40 50 00 00,当然在小端CPU中反着看就是00 00 50 40。
双精度同单精度一样,只是扩展成8字节,其中指数部分扩大到11位,小数部分扩大到52位。
相关文章推荐
- OAF学习笔记-23-OAF中将数据库中的表导出生成xls ,xlsx,csv 等格式
- OAF学习笔记-23-OAF中将数据库中的表导出生成xls ,xlsx,csv 等格式
- 科锐课堂笔记:2017/3/6 一维数组与多维数组
- 浮点数在内存中的存储格式
- <MFC笔记>位图格式及其存储和读取
- 科锐课堂笔记:2017/2/27 IDE环境使用与switch实现机制
- 科锐课堂笔记:2017/2/21 基础知识
- 浮点数存储格式
- 《Modern Python Cookbook》(Python编程范例)笔记——1.4 浮点数、小数、分数
- 操作系统课堂笔记(2)操作系统的硬件环境之存储系统
- 浮点数在内存中的存储格式
- 科锐课堂笔记:2017/4/13 运算符重载与友元
- Hadoop学习笔记 --- 深入理解 parquet 列式存储格式
- OAF学习笔记-23-OAF中将数据库中的表导出生成xls ,xlsx,csv 等格式
- 将按十六进制存储的32位浮点数转换为十进制的小数
- 浮点数在计算机中的存储格式
- 科锐课堂笔记:2017/3/8 内存结构与变量作用域
- 浮点数的存储格式
- 科锐课堂笔记:2017/3/17 结构体
- 科锐课堂笔记:2017/4/18 类继承