導航:首頁 > 編程語言 > 編程怎麼移位

編程怎麼移位

發布時間:2023-09-17 20:05:20

1. 台達plc移位指令

有計算機基礎知識、或學過匯編語言的,對PLC移位指令很好理解。而於上了年紀又無基礎者,則須通俗易懂地去解說。
今特把所述內容整理了一下,以供後續參考;目標PLC選用台達ES2。
1.循環移位的概念
1)用繩子將一列珠子串起來,然後將繩子兩頭系在一起,珠子就可構成一個環;若用手推動珠子,珠子就可以沿著繩子「循環」移動。
若選珠子為16顆、繩子足夠長,則可把環拉直,而使珠子排成一排;推動珠子仍可循環,但循環後仍使珠子成為一條直線。若假設這16顆珠子對應16位二進制數,這就相當於PLC中的一個數據「字」。
如果能通過某種方法,使「字」中的位像珠子一樣移動,那麼就是數據位「循環」;實現這種移動的指令,就是循環指令。
2)數據位的移動,與珠子的移動,當然不會完全相同;通常,在做循環移位運算時,會把移動的最末一位記入進位標志M1022。
當進位標志M1022不參與循環時,就稱為不帶進位,其指令就是不帶進位的指令;若進位標志M1022參與循環,就是帶進位循環,其指令就是帶進位循環指令。
2.PLC中的循環移位
1)循環右移一位的情況。參見附圖1,先使最右邊一位(b0位)為1,其餘為0。設每次循環右移一位,則移位一次後,「1」就被移出並轉移到了b15位。
同時,被移出的最末一位的值,將送到M1022;此處僅移一位,則就是原b0位→M1022。

為加深印象,下面結合具體的指令來進行講解。
2)循環右移4位的情況。參見附圖2,首先仍使b0位為1,其餘為0。移位一次後,原b0位的「1」,到了b12位。
但附圖2的「過程示意」並不準確;因為,數據的位並沒有被「移出」在外,而是如串在繩子上的珠子一般,逐位順序移動的。
此時,M1022的值,是原b3的值,因為它是被最末移出的。

3.一個簡單示例(ROR)
1)右循環移位指令ROR。該指令的目標元件www.plcs.cn,可以是字元件、也可以是由位組合成的字,故不妨使用K4M0來進行試驗,並通過D0來觀察其值(梯形圖監控時),程序參見附圖3。
PLC上電運行時,使M0置1,如附圖1的情況;接通一次X0,稍作延時後,M20接通一個脈沖周期,作為移位信號。接通X1,清零K4M0,相當於停止信號。
該程序,用台達WPLSoft編程軟體編制。

2)運行程序,監控梯形圖,D0顯示為H1(調整為十六進制顯示);第一次接通X0,D0顯示H8000,說明b15為1,其餘為0,與附圖1的演示相同。以後依此類推,其運行結果可參見附圖4。
第16次移位後,又回到了起始狀態,可以繼續下一個循環。

4.結語
這是一個非常簡單的介紹,不知對入門者有無參考作用。其餘移位指令,可仿此試驗理解。
本件可作為《自學自會PLC指令——三菱FX2N編程技術及應用》一書的補充材料。

閱讀全文

與編程怎麼移位相關的資料

熱點內容
如何在找機平台下載app 瀏覽:395
西安php工作好找嗎 瀏覽:927
outlook命令 瀏覽:229
程序員那麼可愛主角介紹 瀏覽:934
銀行卡簡訊消息如何加密 瀏覽:246
文件夾怎麼不重名 瀏覽:406
linuxyum安裝java 瀏覽:250
java數字計算 瀏覽:286
java按鈕文字 瀏覽:641
python列表互換位置 瀏覽:337
sw怎麼刪除定向命令 瀏覽:757
php包含數組元素 瀏覽:666
安卓系統開發app需要什麼 瀏覽:730
ssh2項目源碼 瀏覽:288
三星提供了什麼伺服器地址 瀏覽:903
阿里雲輕量應用伺服器60元 瀏覽:160
微信公眾號支付java 瀏覽:217
蝦皮用的什麼伺服器 瀏覽:144
拍照的app哪個好用 瀏覽:890
方舟編譯器2022 瀏覽:770