Subject: Computer Architecture
1. Copy the following code into your ARM emulator:
; Addresing Mode Names or Alternate names
;---------Initialization block
MOV R0, #0x1AC
MOV R1, #0x200
STR R0, [R1]
MOV R1, #0x108
STR R0, [R1]
MOV R0, #0x100
MOV R1, #0x10C
STR R0, [R1]
;---------Initialization block
; ………...Register to register or Register direct
MOV R0, R1
;---------------------------------------------------------------
;---------Absolute or Direct
LDR R0, =0x100
;---------------------------------------------------------------
;---------Literal or Immediate
MOV R0, #0x104
ADD R1, R2, #0x108
;---------------------------------------------------------------
;---------Indexed, base or Register indirect
LDR R0, [R1]
;---------------------------------------------------------------
;---------Pre-indexed, base with displacement or Register indirect
base with offset
LDR R0, [R1, #4]
;---------------------------------------------------------------
;----------Pre-indexed, autoindexing or Register indirect
pre-incrementing
LDR R0, [R1, #4]!
;---------------------------------------------------------------
;----------Post-indexing, autoindexed or Register indirect
post-increment
LDR R0, [R1], #4
;---------------------------------------------------------------
Run the code and explain what happens for each of the following
cases:
a) Register Addressing Mode
b) Register Indirect Addressing Mode
c) ARM's Autoindexing Pre-indexed Addressing Mode
d) ARM's Autoindexing Post-indexing Addressing Mode
Subject: Computer Architecture 1. Copy the following code into your ARM emulator: ; Addresing Mode Names or Alternate na
-
- Site Admin
- Posts: 899603
- Joined: Mon Aug 02, 2021 8:13 am