多暫存器和堆疊定址的用法:多暫存器定址: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執行機器指令,也就是二進位制數。機器指令難於閱讀,編寫。所以人們用英語單詞來表示機器語言,這種方式被稱為組合語言。用組...