您现在所在的是:

三菱Mitsubishi

回帖:9个,阅读:1917 [上一页] [1] [下一页]
3412
ymxu
文章数:329
年度积分:50
历史总积分:3412
注册时间:2015/4/17
发站内信
发表于:2016/4/1 17:01:27
#0楼
如指令 MUL D0 D1 D2    

此时结果等于 D3 D2,  假设 D0 D1乘积小于 32767  , 此时是不是可以直接写

ADD D2 K100 D4    假如 D0 D1 乘积是 5000,  D4 中会是 5100吗?

有没有可以将32位或64位程序转换成 16的方法?
19260
pqsh 版主
文章数:7424
年度积分:1090
历史总积分:19260
注册时间:2006/8/22
发站内信
2018论坛解答高手
发表于:2016/4/1 17:08:19
#1楼
除了浮点,应该是可以这样转的.
如果我忘了我
请帮忙记得我
pqsh@163,326199298@v&q同号
4809
528工控科技
文章数:1574
年度积分:20
历史总积分:4809
注册时间:2014/1/3
发站内信
工控人谈电商
发表于:2016/4/1 17:12:40
#2楼
可以的,小于16位的数据就是存在D2里
gk528.com
10454
xlian
文章数:3232
年度积分:94
历史总积分:10454
注册时间:2002/5/7
发站内信
2018论坛热心网友
西门子PLC体验(二)
发表于:2016/4/1 18:14:07
#3楼
为安全着想作求余或除1运算比较好点
[此贴子已经被作者于2016/4/1 18:14:33编辑过]
3412
ymxu
文章数:329
年度积分:50
历史总积分:3412
注册时间:2015/4/17
发站内信
发表于:2016/4/1 21:14:31
#4楼
回复 #3楼 xlian
除1后结果占的寄存器更多了,  DIV D0 D1 D2   假如 D0 是16位, 那么结果存 D2 ,D3     如果是 DDIV D0 D2 D4   那么结

果存入 D4 D5 D6 D7 ,我是要将32或64位的转换成16 或 32位的.
37243
cvlsam 版主
文章数:12401
年度积分:1595
历史总积分:37243
注册时间:2001/12/22
发站内信
2018论坛贡献奖
2017论坛贡献奖
2016论坛贡献奖
2015论坛贡献奖
2013论坛贡献奖
2012论坛贡献奖
2011论坛贡献奖
2011国庆活动
2010论坛杰出贡献奖
发表于:2016/4/1 21:50:39
#5楼
以下是引用ymxu2016/4/1 17:01:27的发言:
如指令 MUL D0 D1 D2

此时结果等于 D3 D2,  假设 D0 D1乘积小于 32767  , 此时是不是可以直接写

ADD D2 K100 D4    假如 D0 D1 乘积是 5000,  D4 中会是 5100吗?

有没有可以将32位或64位程序转换成 16的方法?

如果是-5000呢?

因此需要判断数据的符号位,并将符号位填入16位数据的最高位。

Good Luck~
85329
ZCMY 版主
文章数:47405
年度积分:1388
历史总积分:85329
注册时间:2004/3/16
发站内信
2018论坛贡献奖
2018春节活动(三)
2017论坛优秀版主
2017国庆活动(三)
2016论坛优秀版主
2015论坛优秀版主
2014论坛优秀版主
2014相约国庆
2013论坛优秀版主
2012论坛优秀版主
2011论坛贡献奖
2010年论坛优秀版主
发表于:2016/4/1 22:05:44
#6楼
呵呵;目前还不支持64位;
至于32位,如果你能确认数值在16位的范畴内,那么就取低16位用;
20183
高雅的雅
文章数:15777
年度积分:-205
历史总积分:20183
注册时间:2015/5/12
发站内信
2018论坛解答高手
发表于:2016/4/1 23:20:26
#7楼
三菱的只要积算结果不大于16位,你直接用数据寄存器低16位就行,因为高16位是零
那一瞬间忽然不再想你,因为去一趟漠河,走了一趟西藏,逛了一趟天涯海角,泡了一会栖谷温泉,回来就是:一切随他去吧,该咋过咋过!!车祸不死感言
6705
szhenlong
文章数:1347
年度积分:176
历史总积分:6705
注册时间:2014/9/28
发站内信
发表于:2016/4/2 8:42:19
#8楼
mul本身就是16位指令,如果d2的积大于32767(绝对值)就得用DMUL.
8503
gzlsj
文章数:2657
年度积分:53
历史总积分:8503
注册时间:2008/11/10
发站内信
发表于:2016/4/2 10:37:46
#9楼
不用转直接用低16位就行了

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

78.0005