发布于 2014-09-22 17:31:42
3楼
http://www.ad.siemens.com.cn/club/bbs/post.aspx?myreply=1&b_id=4&a_id=1162884&s_id=23&num=2#anch
当时看了这个帖子,我编了一个,不过我们的笔记本都有加密,别的电脑打不开,把我当时的回帖搬过来
这个程序挺好玩儿的,目前编了一半,是绝对值大于1.0的,还差绝对值小于1.0的
但是有问题
因为是处理实数的,所以在计算的过程中有损失,转化出来的可能有0.000001Exx的误差,但并不是都有。
思路是这样的
对于绝对值大于1.0的数,先转化为无论正负x.xxxxxxExx(也就是FC30的作用),计算出来首位是否有符号,以及小数点的位置
然后将x.xxxxxx逐位提取出来,最后根据xx也就是幂与小数点的位置等,送到字符串
就是在x.xxxxxx逐位提取出来的过程中出现了误差
在逐位提取过程中,还将每个位在加到一起,实时比较,及时跳出循环,避免将100.0这种数转化为100.0000