禁止語句

禁止語句

禁止語句使用關鍵字disable,能夠在任務或程式塊沒有執行完它的所有語句前終止其執行。它能夠用於對硬體中斷和全局復位進行建模。

基本介紹

  • 中文名:禁止語句
  • 外文名:disable statement
  • 定義:對硬體中斷和全局復位進行建模
  • 關鍵字:disable
  • 語句類型:過程性語句
  • 套用學科:計算機原理
形式,禁止語句塊,禁止任務,順序語句塊,

形式

禁止語句是過程性語句,因此它只能出現在always語句和initial語句內,其形式如下:
disable task_id;
disable block_id;
其中,task_id是要終止的任務,block_id是要終止的語句塊
如果disable語句用於終止語句塊,那么disable語句執行後,將繼續執行語句塊後面的語句。

禁止語句塊

一個語句塊的代碼片段,通過disable語句可以禁止語句塊:
禁止語句
這是一個begin—end語句塊,共有4條語句,但是在執行完前兩條語句後這個語句塊就被disable禁止了,所以語句3和語句4從未執行。在禁止語句被執行後,將執行這個語句塊後面的語句,即語句5。
如果disable語句用於終止任務,那么disable語句執行後,將繼續任務調用語句後面的語句。

禁止任務

一個任務的代碼片段,通過disable語句可以禁止任務:
禁止語句
當disable語句執行時,任務被禁止,即語句7永遠不會被執行。然後,緊跟在任務調用語句之後的語句9被執行。
建議在任務定義中最好不要使用禁止語句,尤其是當任務具有一定的返回值時更是如此。這是因為當任務禁止時,其輸出和輸入參數值是不確定的,返回的就是一個不確定的值。如果必須在任務中這樣做,一種比較穩妥的方法是在任務中禁止順序語句塊。

順序語句塊

一個任務的代碼片段,disable語句禁止任務內的順序語句塊。
禁止語句
當禁止語句開始執行時,順序程式塊LOCAL_BLK的執行被終止;語句11將不會被執行。由於這是任務中的惟一語句,因此間接地實現了任務的終止,此時輸出Count的值為10。如果禁止語句被替換為:
disable Example;
那么禁止語句的執行會直接終止任務,導致其輸出Count的值為不確定值。

相關詞條

熱門詞條

聯絡我們