多暫存器定址指令ldmia ldmib

2021-06-21 14:00:25 字數 1089 閱讀 8167

多暫存器和堆疊定址的用法:多暫存器定址:ldmia,ldmib,stmia,stmib,ldmda,ldmdb,s***a,s***b;

堆疊定址:ldmfa,ldmfd,stmfa,stmfd,ldmea,ldmed,stmea,stmed;

fd: 滿遞減堆疊;

ed: 空遞減堆疊;

fa: 滿遞增堆疊;

ea: 空遞增堆疊。

1、多暫存器定址:

ldmia r0!,  

;r1<----[r0]

;r2<----[r0+4]

;r3<----[r0+8]

;r4<----[r0+12]         

例如:所有的示例指令執行前:

mem32[0x1000c] = 0x04

mem32[0x10008] = 0x03

mem32[0x10004] = 0x02

mem32[0x10000] = 0x01

r0 = 0x00010010

r1 = 0x00000000

r3 = 0x00000000

r4 = 0x00000000

1) ldmia r0!,  2) ldmib r0!, 

執行後:                      執行後:

r0 = 0x0010001c    r0 = 0x0010001c

r1 = 0x01                   r1 = 0x02

r2 = 0x02                   r2 = 0x03

r3 = 0x03                   r3 = 0x04

2、堆疊定址:

stmfd入棧指令,相當於s***b

stmfd sp!,                            ;[sp-4]<---r4

;[sp-8]<---r3 

;[sp-12]<---r2   

ldmfd出棧指令,相當於ldmia

ldmfd sp!,                ;r6<----[sp]

;r7<----[sp+4]

;r8<----[sp+8]

暫存器定址方式

指令所要的運算元已儲存在某暫存器中,或把目標運算元存入暫存器。把在指令中指出所使用暫存器 即 暫存器的助憶符 的定址方式稱為暫存器定址方式。指令中可以引用的暫存器及其符號名稱如下 8位暫存器有 ah al bh bl ch cl dh和dl等 16位暫存器有 ax bx cx dx si di sp...

暫存器定址方式

微機系統有七種基本的定址方式 立即定址方式 暫存器定址方式 直接定址方式 暫存器間接定址方式 暫存器相對定址方式 基址加變址定址方式 相對基址加變址定址方式等。其中,後五種定址方式是確定記憶體單元有效位址的五種不同的計算方法,用它們可方便地實現對陣列元素的訪問。立即數定址方式 mov ah,80h ...

組合語言 mov指令,暫存器,定址

馮諾依曼計算機,將計算機分為5大部件 運算器,控制器,儲存器,輸入裝置,輸出裝置。運算器和控制器共同執行指令。指令和資料一樣,儲存為二進位制資料。運算器和控制器共同組成cpu,cpu執行機器指令,也就是二進位制數。機器指令難於閱讀,編寫。所以人們用英語單詞來表示機器語言,這種方式被稱為組合語言。用組...