美文网首页
浮点数的十六进制表示

浮点数的十六进制表示

作者: 泡椒404 | 来源:发表于2019-03-05 15:24 被阅读0次

IEEE 754规定了表示浮点数值的方式:单精确度(32位元)、双精确度(64位元),

单精度二进制小数,使用32个位元存储,

其中分为符号位(S), 指数位(Exp),有效数位(Fraction)

【从左到右依次排序分别位1位、8位、23位】

指数部分即使用所谓的偏正值形式表示,实际值为表示值与一个固定值(32位的情况是127)的和。

采用这种方式表示的目的是简化比较。因为,指数的值可能为正也可能为负,如果采用补码表示的话,全体符号位S和Exp自身的符号位将导致不能简单的进行大小比较。正因为如此,指数部分通常采用一个无符号的正数值存储。单精度的指数部分是−126~+127加上127 ,指数值的大小从1~254(0和255是特殊值)。浮点小数计算时,指数值减去偏正值将是实际的指数大小。

例如有一个浮点数是6.91,如何将其转换为十六进制呢?

首先将6.91转换为二进制形式:

110.111010001111010111000

将其规范化:调整使其实数第一位大于1小于2

6.91 = 1.10111010001111010111000 * 2^2

基本原型出来了

S:0

EXP : 2+127(10进制) =129(10进制) = 10000001(2进制)

Fraction : 10111010001111010111000 (注意:小数点前面的1不要了)

组合一下: 0 10000001 10111010001111010111000
= 0100 0000 1101 1101 0001 1110 1011 1000
= 4 0 D D 1 E B 8


原文:https://blog.csdn.net/Cheatscat/article/details/78533349

相关文章

  • 浮点数的十六进制表示

    IEEE 754规定了表示浮点数值的方式:单精确度(32位元)、双精确度(64位元), 单精度二进制小数,使用32...

  • Python学习笔记(一)基本数据类型

    1. 整数 可直接使用十进制,也可使用十六进制表示,如: 2. 浮点数 对于小数点比较大的浮点数,如1.45x10...

  • Python基础

    数据类型和变量 整数Python可以处理任意大小整数,在计算机中,有时会使用十六进制表示。 浮点数浮点数的小数点位...

  • c语言基础--printf

    转换说明及作为结果的打印输出%a 浮点数、十六进制数字和p-记数法(C99) %A 浮点数、十六进制数字和p...

  • C语言中的常用占位符

    %a 浮点数、十六进制数字和p-记数法(c99)%A浮点数、十六进制数字和p-记法(c99)%c一个字符%d有符号...

  • Python的前半课程总结

    一.Python数据类型: 1.整数:0x表示十六进制 2.浮点数:科学计数法 3.字符串:‘’或者是“” 4.布...

  • PHP浮点数精度问题

    PHP常见的浮点数“bug” 浮点数的表示形式 浮点数的表示(IEEE 754): 浮点数, 以64位的长度(双精...

  • 1.2 浮点型运算

    在计算机中,浮点数虽然表示的范围大,但是,浮点数有个非常重要的特点,就是浮点数常常无法精确表示。浮点数在内存的表示...

  • IPv6协议地址表示方法

    表示方法: IPv6长128b,采用十六进制表示,有三种表示方法 冒分十六进制 每16位值用十六进制值表示,各值之...

  • Python笔记1(基础语法)

    一、数据类型和变量 1)、数据类型 1.整数 int 十六进制用0x前缀和0-9,a-f表示 2.浮点数 fl...

网友评论

      本文标题:浮点数的十六进制表示

      本文链接:https://www.haomeiwen.com/subject/fmqouqtx.html