三菱的on位數(shù)統(tǒng)計(jì)指令sum (d)sum(p)指令,該指令是用來(lái)統(tǒng)計(jì)元件中1的個(gè)數(shù)。如圖4所示,當(dāng)x0有效時(shí)執(zhí)行sum指令,將源操作數(shù)d0中1的個(gè)數(shù)送入目標(biāo)操作數(shù)[d2中,若d0中沒(méi)有1,則零標(biāo)志m8020將置1。
使用sum指令時(shí)應(yīng)注意:
1)源操作數(shù)可取所有數(shù)據(jù)類(lèi)型,目標(biāo)操作數(shù)可取kny,knm,kns,t,c,d,v和z。
2)16位運(yùn)算時(shí)占5個(gè)程序步,32位運(yùn)算則占9個(gè)程序步。
劃重點(diǎn)
也不能說(shuō)把1的個(gè)數(shù)傳過(guò)去,對(duì)于初學(xué)者來(lái)說(shuō)會(huì)以為源操作數(shù)有幾個(gè)1,傳過(guò)去目標(biāo)操作數(shù)就有幾個(gè)1,不是這樣的。而是把源操作數(shù)有幾個(gè)1,這個(gè)數(shù)據(jù)傳過(guò)去。比如源操作數(shù)k1x0里面有三個(gè)位x0x1x2都置1了,然后傳過(guò)去目標(biāo)操作數(shù)k1m0,這時(shí)候是傳“3”這個(gè)數(shù)據(jù)過(guò)去,m0.m1置on,也就說(shuō)目標(biāo)操作數(shù)就有兩個(gè)1了。