2. Muat register dari memori

2.1. Konvensi dokumen

Notasi: Rt, Rn menunjuk register ARM R0-R7 kecuali dinyatakan sebaliknya. immN mewakili nilai langsung dengan lebar N bit sehingga imm5 dibatasi pada rentang 0-31. [Rn + immN] adalah isi dari alamat memori yang diperoleh dengan menambahkan Rn dan offset immN. Offset diukur dalam byte. Instruksi-instruksi ini mempengaruhi flag kondisi.

2.2. Pemuatan Register

  • ldr(Rt, [Rn, imm7]) Rt = [Rn + imm7] Muat sebuah kata 32 bit

  • ldrb(Rt, [Rn, imm5]) Rt = [Rn + imm5] Muat sebuah byte

  • ldrh(Rt, [Rn, imm6]) Rt = [Rn + imm6] Muat sebuah half word 16 bit

Di mana byte atau half word dimuat, nilainya diperluas nol menjadi 32 bit.

Offset langsung yang ditentukan diukur dalam byte. Oleh karena itu, dalam kasus ldr, nilai 7 bit memungkinkan nilai kata 32 bit yang selaras diakses dengan offset maksimum 31 kata. Dalam kasus ldrh, nilai 6 bit memungkinkan nilai half-word 16 bit yang selaras diakses dengan offset maksimum 31 half-word.