跳轉指令

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

跳轉指令(jump instruction)是2018年公布的計算機科學技術名詞。

跳轉指令(jump instruction)是2018年公布的計算機科學技術名詞。收起

查看更多
  • Thumb指令集之: Thumb跳轉指令
    Thumb中有兩個分支跳轉指令的變體,第一個變體與ARM版本指令相似,可條件執(zhí)行,跳轉被限制在有符號8位立即數(shù)所表示的范圍內,或者是±256B。第二個變體不可條件執(zhí)行(沒有條件碼部分),但擴展了有效跳轉范圍,跳轉范圍為有符號11位立即數(shù)表示的范圍,即±2048B。
  • 跳轉指令之:帶狀態(tài)切換的連接跳轉指令BLX(2)
    帶連接和狀態(tài)切換的跳轉指令BLX(Branch with Link Exchange)使用一個寄存器中的絕對地址,用于使程序跳轉到Thumb狀態(tài)或從Thumb狀態(tài)返回。該指令用分支寄存器的最低位來更新CPSR中的T位,將返回地址寫入到連接寄存器LR中。
  • 跳轉指令之:帶狀態(tài)切換的連接跳轉指令BLX(1)
    帶連接和狀態(tài)切換的跳轉指令BLX(Branch with Link Exchange)使用標號,用于使程序跳轉到Thumb狀態(tài)或從Thumb狀態(tài)返回。該指令為無條件執(zhí)行指令,并用分支寄存器的最低位來更新CPSR中的T位,將返回地址寫入到連接寄存器LR中。
  • 跳轉指令之:帶狀態(tài)切換的跳轉指令BX
    帶狀態(tài)切換的跳轉指令BX使程序跳轉到指令中指定的參數(shù)Rm指定的地址執(zhí)行程序,Rm的第0位拷貝到CPSR中T位,位[31∶1]移入PC。若Rm的bit[0]為1,則跳轉時自動將CPSR中的標志位T置位,即把目標地址的代碼解釋為Thumb代碼;若Rm的位bit[0]為0,則跳轉時自動將CPSR中的標志位T復位,即把目標地址代碼解釋為ARM代碼
  • 跳轉指令之:跳轉指令B及帶連接的跳轉指令BL
    跳轉指令B使程序跳轉到指定的地址執(zhí)行程序。帶連接的跳轉指令BL將下一條指令的地址拷貝到r14(即返回地址連接寄存器LR)寄存器中,然后跳轉到指定地址運行程序。需要注意的是,這兩條指令和目標地址處的指令都要屬于ARM指令集。兩條指令都可以根據CPSR中的條件標志位的值決定指令是否執(zhí)行。

正在努力加載...