日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 單片機 > 單片機
[導讀]   分支轉移程序的特點是程序中含有轉移指令,轉移指令又分為無條件轉移和有條件轉移,因此分支程序也可分為無條件分支轉移程序和有條件分支轉移程序。無條件分支轉移程序很簡單,這里不再討論。有條件

  分支轉移程序的特點是程序中含有轉移指令,轉移指令又分為無條件轉移和有條件轉移,因此分支程序也可分為無條件分支轉移程序和有條件分支轉移程序。無條件分支轉移程序很簡單,這里不再討論。有條件分支轉移程序按結構類型來分,又分為單分支選擇結構和多分支選擇結構。
  
  1.單分支選擇結構
  
  程序的判別僅有兩個出口,兩者選一,稱為單分支選擇結構,它在程序設計中的應用極為普遍。單分支轉移程序設計一般根據運算結果的狀態(tài)標志,用條件判跳指令來選擇并轉移。
  
  求單字節(jié)有符號數的二進制補碼。
  
  正數補碼是其本身,負數補碼是其反碼加1。因此,程序應首先判斷被轉換數的符號,負數進行轉換,正數本身即為補碼。
  
  設二進制數放在累加器A中,其補碼放回到A中,程序框圖如圖4-3所示。參考程序如下:
  
  此外,單分支選擇結構還有如圖4-4、圖4-5等所示的幾種形式。
  
  2.多分支選擇結構
  
  當程序的判別部分有兩個以上的出口流向時,為多分支選擇結構。它常有兩種形式,如圖4-6和圖4-7所示。
  
  指令系統(tǒng)提供了非常有用的兩種多分支選擇指令:
  


  它們?yōu)榉种мD移結構程序的編寫提供了方便。
  
  間接轉移指令“JMP @A+DPTR”由數據指針DPTR決定多分支轉移程序的首地址,由累加器A的內容動態(tài)地選擇對應的分支程序。
  
  4條比較轉移指令CJNE能對兩個欲比較的單元內容進行比較。當不相等時,程序實現相對轉移,并能指出其大小,以備進行第二次判斷;若兩者相等,則程序按順序往下執(zhí)行。
  
  最簡單的分支轉移程序的設計一般常采用逐次比較法,就是把所有不同的情況一個一個地進行比較,發(fā)現符合就轉向對應的處理程序。這種方法的缺點是程序太長,有n種可能的情況,就需有n個判斷和轉移。
  
  求符號函數的值。符號函數定義如下:
  
  X存放在40H單元,y存放在41H單元,程序框圖如圖4-6所示。
  
  程序如下:
  
  在實際應用中,經常遇到圖4-7所示結構形式的分支轉移程序設計,即在不少應用場合,需根據某一單元的內容是0,1,…,n分別轉向處理程序0,處理程序1,…,處理程序n。一個典型的例子就是當單片機系統(tǒng)中的鍵盤按下時,會得到一個鍵值,根據不同的鍵值,跳向不同的鍵處理程序入口。此時,可用直接轉移指令(LJMP或AJMP指令)組成一個轉移表,然后把該單元的內容讀入累加器A,轉移表首地址放人DPTR中,再利用間接轉移指令實現分支轉移。
  
   根據寄存器R2的內容,轉向各個處理程序PRGX(X=O~72)。
  
  程序如下:
  
  R2中的分支轉移參量乘3是由于長跳轉指令LJMP要占3個單元。本例程序可位于64 KB程序存儲器空間的任何區(qū)域。


本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯系該專欄作者,如若文章內容侵犯您的權益,請及時聯系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關閉