三菱的on位数统计指令sum (d)sum(p)指令,该指令是用来统计元件中1的个数。如图4所示,当x0有效时执行sum指令,将源操作数d0中1的个数送入目标操作数[d2中,若d0中没有1,则零标志m8020将置1。
使用sum指令时应注意:
1)源操作数可取所有数据类型,目标操作数可取kny,knm,kns,t,c,d,v和z。
2)16位运算时占5个程序步,32位运算则占9个程序步。
划重点
也不能说把1的个数传过去,对于初学者来说会以为源操作数有几个1,传过去目标操作数就有几个1,不是这样的。而是把源操作数有几个1,这个数据传过去。比如源操作数k1x0里面有三个位x0x1x2都置1了,然后传过去目标操作数k1m0,这时候是传“3”这个数据过去,m0.m1置on,也就说目标操作数就有两个1了。