移位寄存器指令请教

移位寄存器指令SHRB最大长度超过64位时如果该如何处理,我在网上看到用两个指令连起来用第一个指令的溢出位作为第二个的DATA,请问第二个指令的溢出位可以使用SM1,1吗,第一个指令和第二个指令的SM1.1之间不会有影响吗?

最佳答案

假如你要循环移位64位,则使用2个双整数来进行:
 VD0存高32位,VD1存低32位

 先对VD1右移位,如果溢出则SM1.1为1,将SM1.1值赋值给V1000.1缓存;
 在进行下一次移位前,S7 200会将所有标志位置初始状态;
 再对VD0右移,如果溢出则SM1.1为1,将VB2.7置1,VB0.7置1

 数据位超过64位 128位 甚至更多都可以这样作

提问者对于答案的评价:
谢谢

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc348645.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月4日 下午11:48
下一篇 2021年7月4日 下午11:48

相关推荐

发表回复

登录后才能评论