sxdo
級(jí)別: *
|
第一個(gè)程序: LD X0 INCP D0 LD M8000 MOV D0 D10 LD X1 SFWRP D10 K4Y0 K8 第二個(gè)程序: LD X0 INCP D0 LD M8000 MOV D0 D10 LD X1 SFWRP DIO D20 K8 BCD D20 K4Y0 為什么兩種情況下Y0輸出不同?請(qǐng)高手幫忙,謝謝!! [ 此帖被sxdo在2010-10-23 15:14重新編輯 ] |
---|---|
|
hxl202319
工資就像大姨媽,一月一次,一周就沒(méi)了
級(jí)別: 網(wǎng)絡(luò)英雄
|
最主要的區(qū)別就是BCD, 上個(gè)程序是直接用二進(jìn)制的,下面的是二—十進(jìn)制的 |
|
---|---|---|
|
sjm213
有小知識(shí),無(wú)大學(xué)問(wèn)。
級(jí)別: 論壇版主
|
1. SWFR指令的【D·】位不僅確定了數(shù)據(jù)的個(gè)數(shù),而且確定了數(shù)筆數(shù)據(jù)存儲(chǔ)的位置。程序1中D0的數(shù)據(jù)被依次放到K4Y20、K4Y40……,而程序2中D0數(shù)據(jù)只是放入D寄存器,不會(huì)映射到輸出點(diǎn)上,這是不同之一; 2. 即使單就K4Y0來(lái)看,由于程序2中多了一個(gè)BCD指令,也有可能造成輸出的不同。然而這個(gè)程序中SWFR記錄的數(shù)據(jù)量較小,倒是K4Y0輸出兩者應(yīng)該是一致的。 |
---|---|
|
sxdo
級(jí)別: *
|
謝謝sjm213的熱情回復(fù),不過(guò),通過(guò)三菱仿真軟件,正如你所講, 程序1,當(dāng)X0閉合1次,X1閉合1次,K4Y0的輸出中Y0 ,Y20. 當(dāng)X0閉合第2次,X1閉合第2次,K4Y0的輸出中Y0 ,Y1,Y20. 當(dāng)X0閉合第3次,X1閉合第3 次,K4Y0的輸出中Y0 ,Y2,Y20. 為什么會(huì)有Y20閉合呢? 而程序2,是隨X0,X1閉合的次數(shù),依次輸出Y0,Y1 Y2....... 原因在哪里?再次感謝!! |
---|---|
|
sjm213
有小知識(shí),無(wú)大學(xué)問(wèn)。
級(jí)別: 論壇版主
|
你用的仿真?那么應(yīng)該能看到不只是Y20有輸出,Y41、Y60、Y61沒(méi)有變化嗎? 原因就在SWFR指令,你先去看看這個(gè)指令會(huì)產(chǎn)生什么樣的動(dòng)作,看明白了就理解了。 |
---|---|
|
201114521
天大地大,何處是我家?
級(jí)別: 略有小成
|
我是來(lái)學(xué)習(xí)的。 |
|
---|---|---|
|