kongqigg
级别: 正式会员
精华主题: 0
发帖数量: 6 个
工控威望: 95 点
下载积分: 584 分
在线时间: 10(小时)
注册时间: 2014-12-30
最后登录: 2023-04-03
查看kongqigg的 主题 / 回贴
楼主  发表于: 2015-01-15 17:25
DEBCD指令得到的数值是错的?为什么??请大侠指点。
kongqigg
级别: 正式会员
精华主题: 0
发帖数量: 6 个
工控威望: 95 点
下载积分: 584 分
在线时间: 10(小时)
注册时间: 2014-12-30
最后登录: 2023-04-03
查看kongqigg的 主题 / 回贴
1楼  发表于: 2015-01-15 18:51
我以为DEBCD指令得到结果是100000,但是不知道为变大了
kongqigg
级别: 正式会员
精华主题: 0
发帖数量: 6 个
工控威望: 95 点
下载积分: 584 分
在线时间: 10(小时)
注册时间: 2014-12-30
最后登录: 2023-04-03
查看kongqigg的 主题 / 回贴
2楼  发表于: 2015-01-16 11:38
引用
引用第4楼niningtt于2015-01-15 20:45发表的  :
你需要将浮点数转换成整数也就是100000.0转成INT100000,
错误原因,1、BCD码转化也不是将浮点数转为整数 2、直接用浮点数转BCD也是错误的做法,

我后来把debcd改了,改成INT就好了,但是我还是不太清楚,第一次用浮点数,谢谢指点。
kongqigg
级别: 正式会员
精华主题: 0
发帖数量: 6 个
工控威望: 95 点
下载积分: 584 分
在线时间: 10(小时)
注册时间: 2014-12-30
最后登录: 2023-04-03
查看kongqigg的 主题 / 回贴
3楼  发表于: 2015-01-16 13:31
引用
引用第5楼hsqknx于2015-01-15 21:21发表的  :
结果不是你这么用的,DEBCD得出的是10进制小数,会有误差

那个程序里面还有一段跟这个差不多的,那里的BCD指令得出来的结果是正确的。
所以我很纳闷
求高人指点。