2. Rekisterin lataaminen muistista

2.1. Dokumentin merkintätavat

Merkintä: Rt, Rn tarkoittavat ARM-rekistereitä R0-R7, ellei toisin mainita. immN edustaa välitöntä arvoa, jonka leveys on N bittiä, joten imm5 on rajoitettu väliin 0-31. [Rn + immN] on muistiosoitteen sisältö, joka saadaan lisäämällä Rn ja siirtymä immN. Siirtymät mitataan tavuina. Nämä käskyt vaikuttavat ehtolippuihin.

2.2. Rekisterin lataus

  • ldr(Rt, [Rn, imm7]) Rt = [Rn + imm7] Lataa 32-bittisen sanan

  • ldrb(Rt, [Rn, imm5]) Rt = [Rn + imm5] Lataa tavun

  • ldrh(Rt, [Rn, imm6]) Rt = [Rn + imm6] Lataa 16-bittisen puolisanan

Kun ladataan tavu tai puolisana, se laajennetaan nollilla 32 bittiin.

Määritellyt välittömät siirtymät mitataan tavuina. Näin ollen ldr -käskyn tapauksessa 7-bittinen arvo mahdollistaa 32-bittisten sanarajoitettujen arvojen käytön enintään 31 sanan siirtymällä. ldrh -käskyn tapauksessa 6-bittinen arvo mahdollistaa 16-bittisten puolisanarajoitettujen arvojen käytön enintään 31 puolisanan siirtymällä.