登录
首页 PLC论坛 三菱Mitsubishi
回帖 发帖
正文

主题:mul指令

点击:4219 回复:7

mul d10 k254 d20
d10的数据是150,为什么d20的结果数是-179717248?
请指教,谢谢!
09-09-07 13:12
MUL 为16位数据乘法,其数据范围为-32768~+32767
你150×254,溢出啦。
请使用32位MUL,也就是DMUL进行运算。
Good Luck
09-09-07 13:44
150*254=38100,但16位的D的数据荡围为-32768~32768,所以你的已经溢出。用DMUL指令就行、、、、、你可以用WIN系统的计算器,自己计算一下。多少位可以表示的数据范围。
09-09-07 14:13
呵呵;可以用16位的;
执行后结果是存在D20的32位内,也就是D20 D21
你查看时把D20改成32位的看一下结果;
09-09-08 09:20
乘法的结果太大了,超过16位了,所以要用32位的乘法来做
09-09-09 20:31
以上所说的是对的,但有时有很个别的例子,储存器D也会出问题的。
09-09-11 14:43
6楼
该帖内容不符合相关规定!
09-09-13 12:56

引用 A136126 在 2009-9-11 14:43:45 发言【内容省略】

出现折问题,把PLC清除内存再试下,通常就能解决
09-09-17 08:38

工控新闻

更多新闻资讯