登录
首页
PLC论坛
三菱Mitsubishi
回帖
发帖
正文
主题:mul指令
点击:4248 回复:7
楼主
编辑
引用
管理
hanqin
mul d10 k254 d20
d10的数据是150,为什么d20的结果数是-179717248?
请指教,谢谢!
09-09-07 13:12
1楼
编辑
引用
管理
cvlsam
MUL 为16位数据乘法,其数据范围为-32768~+32767
你150×254,溢出啦。
请使用32位MUL,也就是DMUL进行运算。
Good Luck
09-09-07 13:44
2楼
编辑
引用
管理
baoming-1986
150*254=38100,但16位的D的数据荡围为-32768~32768,所以你的已经溢出。用DMUL指令就行、、、、、你可以用WIN系统的计算器,自己计算一下。多少位可以表示的数据范围。
09-09-07 14:13
3楼
编辑
引用
管理
ZCMY
呵呵;可以用16位的;
执行后结果是存在D20的32位内,也就是D20 D21
你查看时把D20改成32位的看一下结果;
09-09-08 09:20
4楼
编辑
引用
管理
lixiaobai
乘法的结果太大了,超过16位了,所以要用32位的乘法来做
09-09-09 20:31
5楼
编辑
引用
管理
A136126
以上所说的是对的,但有时有很个别的例子,储存器D也会出问题的。
09-09-11 14:43
6楼
管理
kubi0307
该帖内容不符合相关规定!
09-09-13 12:56
7楼
编辑
引用
管理
fumz78
引用
A136126
在 2009-9-11 14:43:45 发言
【内容省略】
出现折问题,把PLC清除内存再试下,通常就能解决
09-09-17 08:38
工控新闻
2025年民企高端装备出口增长26.9%
2026工赋上海创新大会“AI+制造”未来产品发布会成功举办
领航级工厂领跑中国“智造”
西门子收购 ASTER Technologies,构建 PCB 测试工程先进解决方案
越疆上榜2025中国工业AI领军企业TOP50
ABB电气智慧建筑及智慧电力经销商大会在琼成功举办
沈阳新松走出引领机器人产业高质量发展新路径
从测试验证到批量信赖:埃斯顿携手合作伙伴共拓国产机器人应用之路
更多新闻资讯