如何将十六进制转换成浮点数

 我来答
仁昌爱娱乐
高粉答主

2020-01-26 · 专注关心娱乐
仁昌爱娱乐
采纳数:760 获赞数:459867

向TA提问 私信TA
展开全部

十六进制转换成浮点数先要将十六进制数的整数部分和小数部分分别转换成十进制数,再加以合并,并保留浮点数精度。

十六进制数转换成十进制数整数的基本做法是使用"按权相加"法,把十六进制数首先写成加权系数展开式,然后按十进制加法规则求和。

十六进制小数转换成十进制小数采用"乘10取整,顺序排列"法。用10乘十六进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数部分,如此进行,直到积中的小数部分为零,或者达到所要求的精度为止。

例如十六进制数AF.3912转换成十进制数为AF.3912=(10*16^1+15*16^0).(2*16^-0+2*16^-1+2*16^-2+9*16^-3)=175.2229。浮点数的精度为小数点后2位,即十六进制数AF.3912=十进制数175.22。

扩展资料:

十六进制数的基数是16,采用的数码是0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F。其中A-F分别表示十进制数字10-15.十六进制数的技术规则是“逢十六进一”,它的各位的权是以16的N次方标识的。

十六进制数的加减法的进/借位规则为:借一当十六,逢十六进一。 十六进制数同二进制数及十进制数一样,也可以写成展开式的形式。

im2ah
推荐于2017-11-23 · TA获得超过4.8万个赞
知道大有可为答主
回答量:1.8万
采纳率:96%
帮助的人:1077万
展开全部
1、4字节指的是有4个内存单元,每个单元各放着一个0~255的整数,拼凑起来形成一个32个二进制位的数儿;
2、根据不同的视角来看待或理解这个数儿,可以得出很多不同的答案;
3、针对你的问题,其实是“将视角切换为单精度浮点数”,单精度浮点数在内存单元中如何表示,是个挺复杂的事儿,具体是国际电气标准IEEE754规定的,如果你能看懂,绝对可以品味到其中的精彩,这个才是最核心的“原理”;
4、从你的描述上看,似乎也并不是想了解到最底层的透彻,仅仅是了解这段程序如何能工作,如果是这样的话,答案是:强制类型转换。(float*)&cByte的意思是带上一副“单精度浮点数”的眼镜,去看cByte数组中的内容,前面再加一个*,意思是“看好了,拿出来”。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
爱你1314PZY
2020-11-04
知道答主
回答量:1
采纳率:0%
帮助的人:562
展开全部
str[0] = 0xC0;
str[1] = 0x82;
str[2] = 0x1E;
str[3] = 0x44;

float *w=(float*)(&str);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
8284668
2022-11-22 · 超过11用户采纳过TA的回答
知道答主
回答量:31
采纳率:0%
帮助的人:7万
展开全部
b=b0+b1×16+b2×256+b3×4096+b4×6553+b5×1048576+b6×16777216+b7×268435456
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式