发布于 2012-04-12 23:16:25
12楼
其实shine版的意思是把整型数转为ASCII,再换算为浮点数。
当然这种方法只适用于楼主给出的情况,就是每个字节里只存放一个位数。
至于30H,其实这个是整型转换ASCII码的转换方法。
比如英文字母小写a,ASCII表中以16进制数60H表示;英文字母小写b,ASCII表中以16进制数61H表示等。
而正巧数字0-9的ACSII码用16进制表示就是30H~39H。小数点的ASCII码是2EH。
所以整型数5加上30H也就是35H,正好是ASCII的字符5。
用楼主提供的位数来举例
例如
MB 100 =1
MB 200 =2
MB 300 =3
MB 400 =4
MB 500 =5
那么加30H后 放到连续地址(加上小数点)就是 31H 32H 2EH 33H 34H 35H
然后用STR转换为实型数就得到12.345了
不过我很怀疑把字符串转换为浮点数的效率,耗时或许会更长。