将十进制数17.296875转换成IEEE754格式的32浮点数的二进制存储

将十进制数17.296875转换成IEEE754格式的32浮点数的二进制存储... 将十进制数17.296875转换成IEEE754格式的32浮点数的二进制存储 展开
 我来答
仁昌爱娱乐
高粉答主

2019-11-19 · 专注关心娱乐
仁昌爱娱乐
采纳数:760 获赞数:459833

向TA提问 私信TA
展开全部

十进制数17.296875转换成IEEE754格式的32浮点数的二进制存储表示为10001.010011。

十进制数转换为二进制数时,由于整数和小数的转换方法不同,所以先将十进制数的整数部分和小数部分分别转换后,再加以合并。十进制数17 = 1*2^4+1*2^0= 二进制数10001。

十进制数0.296875=  0.296875 * 2 = 0.59375 ,0.59375 * 2  = 1.1875,0.1875* 2* 2  =0.75,0.75* 2  = 1.5,0.5*2 =1。二进制数为0.010011。即十进制数17.296875 = 二进制数(10001+0.010011)。

扩展资料:

十进制整数转换为二进制整数采用"除二取余,逆序排列"法。用二去除十进制整数,可以得到一个商和余数;再用二去除商,又会得到一个商和余数,如此进行,直到商为零时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。

十进制小数转换成二进制小数采用"乘二取整,顺序排列"法。用二乘十进制小数,得到积,将积的整数部分取出,再用二乘余下的小数部分,如此进行,直到积中的小数部分为零。然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。

上海巴鲁图工程机械科技有限公司_
2022-05-15 广告
增量编码器一般输出信号是两路正交脉冲信号和一路参考信号,之所以叫增量是因为它的位置信号是通过对脉冲计数累加得到,依靠计数设备的内部记忆来记住位置,并且同每圈输出的参考信号来清除累计误差. 缺点就是断电后,需要重新寻找初始位置. 例如打印机扫... 点击进入详情页
本回答由上海巴鲁图工程机械科技有限公司_提供
爱教育爱学习
高粉答主

2019-11-19 · 学而不思则罔,思而不学则殆
爱教育爱学习
采纳数:384 获赞数:112732

向TA提问 私信TA
展开全部

十进制数转换成二进制数

十进制浮点数,整数部分转换成二进制,采用除2取余法,将余数从低到高排列,即为整数的二进制数;小数部分转换成二进制,采用乘2取整法,将取整数顺序排列,即为小数的二进制数。小数部分乘2直到小数部分为0,或取到想要的位数,或循环出现前。

一、整数部分

20/2=10....0

10/2=5....0

5/2=2....1

2/2=1....0

1/2=0.....1

二、小数部分

0.163*2=0.3260

0.326*2=0.6520

0.652*2=1.3041

0.304*2=0.6080

0.608*2=1.2161

0.216*2=0.4320

0.432*2=0.8640

0.864*2=1.7281

0.728*2=1.4561

0.456*2=0.9120

不要求精度时,通常取到8~10位

20.163=10100.0010100110

2.移动小数点到第1、2位之间,得e的值

10100.0010100110=1.01000010100110*2的4次方e=4(小数点移动4位)

3.求出S、E、M的值

S=0,E=4+127=131,M=01000010100110

S由小数点的后一位可以看出,0为正数,1为负数。

0100000101000010100110000000000

IEEE754标准中32位浮点数表示

SEM

S是符号位占1位,E是阶码占8位,M是尾数占23位。

当尾数的值不为0时,尾数的最高有效位应为1,这称为浮点数的规格化表示,这样形式的叫规格化。

扩展资料

十进制浮点型数据转换成二进制

整数部分:除以2,取出余数,商继续除以2,直到得到0为止,将取出的余数逆序

小数部分:乘以2,然后取出整数部分,将剩下的小数部分继续乘以2,然后再取整数部分,一直取到小数部分为零为止。如果永远不为零,则按要求保留足够位数的小数,最后一位做0舍1入。将取出的整数顺序排列。

举例:22.8125转二进制的计算过程:

整数部分:除以2,商继续除以2,得到0为止,将余数逆序排列。

22/211余0

11/25余1

5/22余1

2/21余0

1/20余1

得到22的二进制是10110

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友7192e8b
推荐于2017-11-27 · TA获得超过1.1万个赞
知道大有可为答主
回答量:1.1万
采纳率:92%
帮助的人:1488万
展开全部
将原始数据进行整数化:
(17.296875)10*(2^16)10
=(17.296875)10*(65536)10
=(1133568)10
>(1133568)10 //去掉小数,保留整数部分
=(114C00)16
=(0001 0001 0100 1100 0000 0000)2
=(000100010100110000000000)2
因为最初乘了65536,即2的16次方,所以换算成二进制时应右移16位,去掉前导零,
即(10001.00010100110000000000000)2
 
 
 
单精度浮点数保存的字节格式如下:
地址:+0 +1 +2 +3
内容:SEEE EEEE EMMM MMMM MMMM MMMM MMMM MMMM
 
根据IEEE浮点数的定义,将上述二进制数规格化:
(17.296875)10
>(10001.0100110000000000)2
>+1.00010100110000000000 * (2^4)
 
 
符号S为正,等于0 B;
指数EEEEEEEE为4+127=131,等于10000011 B;
尾数为00010100110000000000000 B;
合成后为
0 10000011 000 1010 0110 0000 0000 0000
 
若将上述值表示为十六进制数,则为(41 8A 60 00)16。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式