9.ARM寻址方式
9.ARM尋址方式
1.立即數(shù)尋址
????立即數(shù)尋址,是一種特殊的尋址方式,操作數(shù)本身就是在指令中給出。只有取出指令就取到了操作數(shù)。這個操作數(shù)就稱為立即數(shù),對應(yīng)的尋址方式就是立即數(shù)尋址方式。例如:
ADD R0,R1,#0X45;這匯編的意思:R1+0x45->R0
?
在以上兩條指令中,第二個源操作數(shù),是立即數(shù),要求以"#"為前綴。
2.寄存器尋址
寄存器尋址就是利用寄存器中的數(shù)值作為操作數(shù),這種尋址方式是一種執(zhí)行效率較高的尋址方式。
該指令的執(zhí)行效果是將寄存器R1和R2的內(nèi)容相加,其結(jié)果存放在寄存器R0中
3.寄存器間接尋址
寄存器間接尋址就是寄存器中的存放的是操作數(shù)在內(nèi)存中的地址。例如以下指令:
在第一條指令中,以寄存器R2的值作為操作數(shù)的地址,在存儲器中取得一個操作數(shù)后與R1相加,結(jié)果存入寄存器R0中。第二條指令將以R1的值為地址的存儲器中的數(shù)據(jù)傳送到R0中。
?
4.基址變址尋址
基址變址尋址就是將寄存器里的內(nèi)容(基地址)與指令中給出的地址偏移量相加,從而得到操作數(shù)在內(nèi)存中的地址:
?
5.相對尋址
與基址變址尋址方式相類似,相對尋址PC指針的當(dāng)前值為基地址,指令中的地址標(biāo)號作為偏移量,將兩者相加之后得到操作數(shù)的有效地址。以下程序段完成子程序的調(diào)用和返回,跳轉(zhuǎn)指令BL采用了相對尋址方式:
?
轉(zhuǎn)載于:https://www.cnblogs.com/FORFISH/p/5188694.html
總結(jié)
- 上一篇: php方法-------将汉字转为拼音或
- 下一篇: onvif 模拟摄像头_ONVIF协议测