我瀏覽到這個帖子,也很感興趣,參照幾位樓上的方法。用SFTBL指令4行也可以,用循環FOR指令用了6行也可以,有個疑問8樓的2的N次方減1的方法,實在想不到怎么實現。在實現之余我努力尋找指令,有沒有可以直接類似“FMOV”指令一樣可以直接對bool元件直接進行處理的指令,如“FMOV K1 M0 K24,,這是我的假設指令",,后發現WORK3-R系列中有豐富的位處理指令,找到類似的指令為如下"BLKMOVB"名稱為N位數據傳送。后面我程序如下
1.LD SM400                DMOV HFFFFFF K6M1
   LD<> D0 D2             BKRST M25 K24 
                                    SFTBL  M1   K48  D0 
                                    MOV D0 D2
注釋:D0為上位機輸入。M25后24個為燈。D2為比較用。M1后24個為值1后面調用
2.LD<> D0 D2             MOV K0 V1
                                    MOV D2 D0
   左母線-------------------FOR D0
   LD>= D0 K1V1         SET M1V1
                                     INC V1
    左母線-------------------next
注釋:D0為上位機輸入。M1后24個為燈。V1為計算變量         
3. LD SM400                    DMOV HFFFFFF K6M1
    LD SM400                    BKRST M101 K24 
    LD SM400                    BLKMOVB M1 M101 D0
注釋:D0為上位機輸入。M101往后為24個燈。M1往后24個,為存儲值1后調用