Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
ProcesorARMrealizujekoncepcjęarchitektury„load-store”
,coozna-
cza,żejedynymiinstrukcjamioperującyminadanychwpamięciinstruk-
cjeładowaniaiskładowaniarejestrów,zaśwszelkieoperacjearytmetyczne
ilogicznewykonywanewyłącznienadanychzawartychwrejestrachiar-
gumentachnatychmiastowych(stałychzapisanychwinstrukcji).Oznacza
torównież,żekażdaoperacjalogicznalubarytmetycznanadanejwpamię-
cimusibyćrealizowanaprzezsekwencjękilkuinstrukcjiiwzwiązkuztym
niemożebyćwykonanajakoniepodzielna.
Rys.2.1.ZestawrejestrówprocesoraARMv6-M
Mikrokontrolery
24
RepertuartrybówadresowaniapamięciARMobejmujetrzyodmiany
tryburejestrowegopośredniego:
zprzemieszczeniem-adresjestsumązawartościrejestrubazowego
iprzemieszczenia-stałejzapisanejwinstrukcji,
zindeksowaniem-adresjestsumązawartościrejestrubazowegoiza-
wartościrejestruindeksowegopomnożonejprzez1,2,4lub8(mnoże-
niejestrealizowaneprzezprzesunięciewlewo),
zpostinkrementacjąlubpredekrementacjąrejestrubazowego-adrespo-
chodzizrejestrubazowego,jeston-odpowiednio-zwiększanypodostę-
piedodanejlubzmniejszanyprzeddostępem(pojedynczainstrukcjamoże
ładowaćlubskładowaćwielerejestrów,aadresuzyskanypoostatnimdo-
stępiemożebyćopcjonalniezapisanyzwrotniewrejestrzebazowym).
WterminologiistosowanejwdokumentacjiarchitekturyARMdrugikom-
ponentadresu(stałalubrejestrindeksowy)jestokreślanyjakoprzemiesz-
czenie(offset),aoperacjapostinkrementacjilubpredekrementacjijakoin-
deksowanie.Trybyzpredekrementacjąipostinkrementacjąbazysąużywa-
nem.in.dorealizacjioperacjinastosie.