IEEE浮点表示

观察IEEE浮点表示

工作中遇到过整型转浮点型(union那种转换),碰到就看下书,过后就遗忘了。等过段时间又出现此现象,又重新拿起书本,这次记录了过程。然而一直等到今天才写出来,以防以后还用到,如果能帮助到你就更好了。

测试代码

double uu2double(unsigned word0, unsigned word1)
{
	union
	{
		double d;
		unsigned u[2];
	} temp;

	temp.u[0] = word0;
	temp.u[1] = word1;
	return temp.d;
}

在这里插入图片描述

思路

1,3(小端模式)

//unsigned 4字节 
//  u[1]									   u[0]
00 00 00 03         						00 00 00 01

//double   8字节
//d
0000 0000 0000 0000 0000 0000 0000 0011 0000 0000 0000 0000 0000 0000 0000 0001

//IEEE 浮点表示
/*
  V = (-1)^s * M * 2^E
  符号(sign) 负数(s=1)、正数(s=0)
  规格化的值(阶码域exp不全是0,也不全是1):   E = e-Bias(2^(k-1)-1  单精度127,双精度1023),M = 1+f
  非规格化的值(阶码域exp全是0): 			 E = 1-Bias(2^(k-1)-1  单精度127,双精度1023),M = f
*/
//符号s     阶码exp							尾数f
    0     00000000000   0000 0000 0000 0000 0011 0000 0000 0000 0000 0000 0000 0000 0001
	
	非规格化 V = {2^(1-1023)*[(2^32+2^31+2^0)/(2^52)]} = 6.365987373390e-314#DEN

结果

在这里插入图片描述

参考资料

深入理解计算机系统(中文,原书第三版)
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值