古詩詞大全網 - 成語經典 - 主要的匯編指令有哪些?

主要的匯編指令有哪些?

LDR 和STR——用於字和無符號字節\x0d\指令格式:\x0d\LDR/STR{cond}{T} Rd,\x0d\LDR/STR{cond}B{T} Rd, \x0d\\x0d\LDR{cond}{T} Rd, 加載指定地址的字數據到Rd中;\x0d\STR{cond}{T} Rd, 存儲Rd中的字數據到指定的地址單元中;\x0d\LDR{cond}B{T} Rd, 指令加載指定地址的字節數據到Rd的的最低字節中(Rd的高24位清零);\x0d\STR{cond}B{T} Rd, 指令存儲Rd中的最低字節數據到指定的地址單元中。\x0d\ T為可選後綴,若有T,那麽即使處理器是在特權模式下,存儲系統也將訪問看成處理器是在用戶模式下,T 在用戶模式下無效,不能與前索引偏移壹起使用T。\x0d\\x0d\地址部分可用的形式有4種: \x0d\\x0d\零偏移(zero offset) [Rn] ,Rn的值作為傳送數據的地址。如: \x0d\LDR R0,[R1]; \x0d\前索引偏移(pre-indexed offset) [Rn,Flexoffset]{!} 在數據傳送之前,將偏移量Flexoffset加到Rn 中。其結果作為傳送數據的存儲器地址。若使用後綴“!”,則結果寫回到Rn 中,且Rn 不允許是R15,如: \x0d\LDRB R0,[R1,#8]\x0d\LDR R0,[R1,#8]! \x0d\程序相對偏移(program relative) label(label 必須是在當前指令的土4KB 範圍內) 。 \x0d\程序相對偏移是前索引形式的另壹種版本。從PC 計算偏移量,並將PC 作為Rn 生成前索引指令,不能使用後綴“!”,如: \x0d\LDR R0,place ;\x0d\place地址裝入R0 \x0d\後索引偏移(post-indexed offset) [Rn],Flexoffset。在數據傳送後,將偏移量Flexoffset 加到Rn 中,結果寫回到Rn,Rn 不允許是R15,如: \x0d\LDR R0,[R1],R2,LSL#2 ;\x0d\將存儲器地址為R1 的字數據讀入寄存器R0,並將新地址R1+R2×4寫入R1。\x0d\偏移量Flexoffset可以是下兩種形式之:\x0d\1) 取值範圍是-4095 到+4095 的整數的表達式,經常是數字常量,如:\x0d\STR R5,[R7],#--8 \x0d\2) 壹個寄存器再加上移位(移位由立即數指定),如:\x0d\{-}Rm{,shift} \x0d\其中: \x0d\- :可選負號。若帶符號“壹”,則從Rn 中減去偏移量。否則,將偏移量加到Rn 中。\x0d\Rm :內含偏移量的寄存器。Rm 不允許是R15。 \x0d\Shift:Rm 的可選移位方法。可以是下列形式的任何壹種: \x0d\ASR n :算術右移n 位(1