浮点数的转换 在线等(100分)
已知一个浮点数:-12.034,现在的表示方法为{12,34,-3},分别为整数部分,小数部分,小数位数和符号,如何将其转换为IEEE格式的浮点数保存在一个4字节的空间里???(IEEE格式采用最高位为符号位,8位阶码(移码),23位尾数,要求格式化),重谢!!!!!!!!
已知一个浮点数:-12.034,现在的表示方法为{12,34,-3},分别为整数部分,小数部分,小数位数和符号,如何将其转换为IEEE格式的浮点数保存在一个4字节的空间里???(IEEE格式采用最高位为符号位,8位阶码(移码),23位尾数,要求格式化),重谢!!!!!!!!
只能用整数运算,ln不能用
float 类型是什么格式?不同的编译器(gcc,tc)不一样的(IEEE据我所知有3种浮点数类型,754系列),最后一步strtod是怎么实现的?如果知道的话就可以自己写一个来实现了,而且格式可以自定。
float 类型是什么格式?不同的编译器(gcc,tc)不一样的(IEEE据我所知有3种浮点数类型,754系列),最后一步strtod是怎么实现的?如果知道的话就可以自己写一个来实现了,而且格式可以自定。
===================================
你给出格式,就能写了。。。
就是移位和规格化
我并不知道要使用什么编译器,我本来打算用long来保存的,即把ret定义为long,ret的4个字节填入4个16进制数
楼上的程序只是把字符串转换成了{12,34,-3}这种格式,不知道跟我提的问题有什么联系,而且程序很乱,费我半天劲,a,b可以定义为unsigned long,表示范围更大些
而且还表达不了负整数
高手多多!
偶闪了
我对阶次数多了以后精度变得很差,为什么?????
mark
爱益非浅啊。
知道格式是那样的,
为什么不直接通过乘法来做呢?
硬件不支持浮点运算;我做的差不多了,但还差除法,谁能详细告知一下,分全给你!!!!!(主要是尾数该如何相除,除的结果怎么放,需要规格化么?)
四则运算做完了,在算sin时如果角度很大,需要不停的减去2pai,这样造成很大误差,请问如何解决!!!
ding
借楼主帖子问个白痴问题:
怎么才能发贴啊?我找了半天没找到,郁闷死了!
硬件不支持浮点运算;我做的差不多了,但还差除法,谁能详细告知一下,分全给你!!!!!(主要是尾数该如何相除,除的结果怎么放,需要规格化么?)
-----------------------------------
当然要规格化,否则那个IEEE做什么用的。。。
我以前用dsp写过,现在找不到了
我再找找
.........
大部分问题都解决了,就差sin中减去2pai的问题;我的sin参数为x弧度,如果x很大,我要不停减去2pai,直到小于2pai,pai为3.141592,还有个paiwc为0.0000006535898,用来对结果进行调整;先算出一个k,再做x-2*k*pai,再x-2*k*paiwc,但仍然有误差(跟turboc3.0的sin相比),我的加减乘除和硬件误差为0.000001左右,不知道turboc3.0的sin是怎么实现的,谁有办法么???????(50~100分!!!!)