• <output id="aynwq"><form id="aynwq"><code id="aynwq"></code></form></output>

    <mark id="aynwq"><option id="aynwq"></option></mark>
  • <mark id="aynwq"><option id="aynwq"></option></mark><label id="aynwq"><dl id="aynwq"></dl></label>
  • 學習啦 > 學習電腦 > 電腦硬件知識 > CPU知識 > 西門子CPU寄存器怎么使用

    西門子CPU寄存器怎么使用

    時間: 沈迪豪908 分享

    西門子CPU寄存器怎么使用

      你知道西門子CPU寄存器怎么用嗎?下面由學習啦小編教大家西門子CPU寄存器怎么用

      西門子CPU寄存器的使用介紹

      1.引言

      CPU寄存器狀態字的各位給出了有關指令狀態或結果的信息以及所出現的錯誤,我們可以將二進制邏輯操作狀態位信號狀態直接集成到程序中,以控制程序執行的流程。

      2.狀態字寄存器

      先簡單介紹一下CPU中狀態字。

      ● 首次檢查位:狀態字的0位稱作首次檢查位,如果/FC 位的信號狀態為“0”,則表示伴隨著下一條邏輯指令,程序中將開始一個新的邏輯串。FC前面的斜杠表示對FC取反。

      ● 邏輯運算結果:狀態字的第1位為RLO 位(RLO= “邏輯運算結果”),在二進制邏輯運算中用作暫時存儲位。比如,一串邏輯指令中的某個指令檢查觸點的信號狀態,并根據布爾邏輯運算規則將檢查的結果(狀態位)與RLO位進行邏輯門運算,然后邏輯運算結果又存在RLO位中。

      ● 狀態位:狀態位(第2位)用以保存被尋址位的值。狀態位總是向掃描指令(A,AN,O,…)或寫指令(=,S,R,)顯示尋址位的狀態(對于寫指令,保存的尋址位狀態是本條寫指令執行后的該尋址位的狀態)。

      ● OR位:在用指令OR執行或邏輯操作之前,執行與邏輯操作的時候,就需要用到OR這一狀態位。OR位表示先前執行的與邏輯操作產生的值為“1”,于是,邏輯操作或的執行結果就已被確定為“1”。

      ● OV位:溢出表示算術或比較指令執行時出現了錯誤。根據所執行的算術或邏輯指令結果對該位進行設置。

      ● OS位:溢出存儲位是與OV位一起被置位的,而且在更新算術指令之后,它能夠保持這種狀態,也就是說,它的狀態不會由于下一個算術指令的結果而改變。 這樣,即使是在程序的后面部分,也還有機會判斷數字區域是否溢出或者指令是否含有無效實數。OS位只有通過如下這些命令進行復位:JOS(若OS = 1,則跳轉)命令,塊調用和塊結束命令。

      ● CC1及CC0位:CC1和CC0(條件代碼)位給出有關下列結果的相關信息:

      • 算術指令結果

      • 比較指令結果

      • 字邏輯指令

      • 在移位功能中,移出位相關信息。

      可以用以下指令來檢查條件代碼CC1和CC0。

      CC1 CC0 檢查完成后,如果:

      0 0 A == 0 結果 =0

      1 0 A > 0 結果 > 0

      0 1 A < 0 結果 < 0

      ● BR位:狀態字的第8位稱為二進制結果位。它將字處理程序與位處理聯系起來,在一段既有位操

      作又有字操作的程序中,用于表示字邏輯是否正確。將BR位加入程序后,無論字操作結果如何,都不會造成二進制邏輯鏈中斷。在梯形圖的方塊指令中,BR位與ENO位有對應關系,用于表明方塊指令是否被正確執行:如果執行出現了錯誤,BR位為0,ENO位也為0;如果功能被正確執行,BR位為1,

      ENO位也為1。在用戶編寫的FB/FC程序中,應該對BR位進行管理,功能塊正確執行后,使BR位為1,否則使其為0。使用SAVE指令將RLO存入BR中,從而達到管理BR位目的。

      狀態字的9-15位未使用。

      3.具體使用

      下面我們結合STEP7中的指針編程來具體介紹條件碼CC0/CC0的用法。

      不同的指令在CPU中執行時間是不同的。浮點數比定點數執行時間要長;字邏輯指令比位邏輯指令執行時間要長;在某些程序中適當使用狀態字來進行編程可以減少CPU程序的執行時間。

      例1:比如說要比較一個DB中塊的DBBO-DBB99這100個字節是正數是負數還是0,正數用1來表示;負數用-1來表示;0用0來表示。并且將對應結果存入MB200開始的100個字節中。我們通常的做法可能為:

      如果利用條件碼來進行編程,既可以減少程序的大小還會減少一定的指令執行時間,我們只需要將

      中間的比較程序加以優化,即可以達到目的。

      例2:根據狀態位C0和CC1的狀態而跳轉的跳轉功能指令JZ不改變任何狀態位的狀態,而且邏輯操作結果RLO值也會“隨著”該跳轉功能帶到跳轉程序段中,供用戶程序其它邏輯操作之用(不改變/FC狀態)。

      示例 兩個整數相減并需進行連續判斷:

      L MW2

      L MW8

      -I

      JZ ZERO // 如果結果等于“0”,則跳轉至標號ZERO處

      // 結果不等于“0”時所執行的指令

      ZER // 結果等于“0”時,所要執行的指令

      如果用戶不熟悉JZ指令和狀態位C0和CC1的具體含義,編程時就需要通過比較指令將比較結果存入一個二進制位中,再根據這個二進制位通過JC/JCN指令來控制程序的執行了。

    西門子CPU寄存器怎么使用相關文章:

    1.大學生plc實訓報告范文

    2.plc實習報告范文6篇

    2017023 主站蜘蛛池模板: 大学生毛片a左线播放| 国产精品久久久久久久久久久搜索| 久久久免费精品re6| 欧美亚洲人成网站在线观看刚交 | 99在线视频精品费观看视| 无码天堂va亚洲va在线va| 亚洲AV午夜成人片| 欧美换爱交换乱理伦片老| 人妻精品久久久久中文字幕一冢本| 色噜噜狠狠一区二区三区果冻| 国产成人精品视频一区 | 日本一卡二卡≡卡四卡精品| 亚洲中文字幕无码av在线| 毛片试看120秒| 你懂的手机在线视频| 精品日本一区二区三区在线观看| 国产又粗又猛又黄又爽无遮挡| xxxxx亚洲| 国产视频一区二区在线观看| eeuss影院在线奇兵区1页| 成人免费视频试看120秒| 久久久久亚洲AV无码专区首JN| 暖暖直播在线观看| 亚洲中文字幕不卡无码| 欧美日韩视频精品一区二区 | 99久久精品国产一区二区三区| 小向美奈子中出播放| 中文字幕日韩欧美一区二区三区| 日本高清视频色wwwwww色| 亚洲va久久久噜噜噜久久| 欧美成人高清WW| 亚洲欧洲自拍拍偷午夜色 | 国产女高清在线看免费观看| 四虎最新紧急更新地址| 国产精品成人无码久久久| 91一区二区视频| 国内精品久久久久久久影视麻豆| china同性基友gay勾外卖| 女人与公拘交酡全过程i| 一区二区三区在线| 嫩草伊人久久精品少妇av|