可用SER指令 如: SER D100 D0 D10 K10 其中D100 K10是指以D100为首的10个寄存器 而D0是要查找的数据 D10则是目标的个数注意不是目标的数据 而D11则是第一个符合目标的值D12是最后一个符合的目标值 D13是最小值的位置 D14就是最大值的位置
1)在下拉编辑"edit"菜单中选择编辑“write mode”后2)鼠标双击c18,该处程序逻辑块将变成灰色,并同时弹处一编辑栏,在此你可以将c18改成c13)同样方法你可以将k1000改成k90004)最后你需要将改变后的程序转换convert(这里有3中模式,根据需要选择其一)5)保存后 修改完成.
FX3U的话,有WSUM求和指令,可以直接将连续的几个寄存器中的数据求和,要是不是连续的寄存器,就只能多个ADD相加了.望采纳.
有的,16位add ,32位dadddadd d0 d2 d10把32位整数d0 加上d2 保存到d10中
三菱也有cmp然后是位比较.具体操作形式查看你那款plc相对应的使用手册里的比较指令应用会介绍的比较详细.是fx系列还是q系列等等.都有手册
数据范围不一样,16为的数据范围为:-32767+32768,32为范围大概是-21亿+21亿.如果是16位指令,则改变的只是目标寄存器的内容,如果是32位指令,则改变的是以目标寄存器为首地址的2个寄存器.比如:DMOV K10 D0,就是把十进制的10传送到D0和D1中,其中D1存高位,D0存低位.
比较D10>=D100成立导通不成立断开
CMP是比较指令.意思是D100里面的数值小于2000时输出到m100,D100里面的里面的数值等2000里输出到m101,D100里面的里面的数值等2000里输出到m102.
你仔细阅读一下说明书中关于脉冲密度指令SPD的说明,就清楚了.指令中,D3000暂存D3001的计数结果,相当于瞬时值,并不是终值.下个指令中D3000的值是SPD完成后的终值.
可以用冒泡排序的方法,先把全部数字放在一个数组里,然后依次比较相邻的两个数字,如果前一个比后一个大,就两个交换位置,然后下一组,直至一轮比较完后,再循环.循环几次后,这个数组就是从小到大排列的了.