Adresseerimise viisid (Addressing modes)
Otsene - käsuga antakse ette operandi aadress, mille järgi see sealt ka leitakse. Vahetu
- operand antakse koos käsuga, mälus on koos käsukood ja operant Suhteline -
antakse operandi aadress käsuloenduri prog. jooksva aadressi suhtes. Operandi
aadress leitakse käsuloenduri ja juhtaadressi summeerimisega. Kaudne - kõigepealt
leitakse mälust operandi aadress ja seejärel teisest mälupesast operand.
Indekseerimine - baasaadressina kasutatakse indeksiregistris salvestatud aadressi
19
sõna. Autoinkrementne - sarnane kaudsega, aga pärast operandi adresseerimist ja käsu
täitmist registri sisu kasvatatakse registri sisu 2 võrra või 1 võrra. Autodekrementne -
sarnane kaudsega, enne operandi adresseerimist kahandatakse registri sisu 2 või 1
võrra.
1. Vahetu adresseerimine ? direct addressing
Operandi määratlemiseks kasutatakse tema täisaadressi. Instruktsioon pääseb ligi alati
ainult täpselt samale mälukohale, nii et väärtus võib muutuda, aga asukoht mitte. Saab
kasutada globaalsete muutujate korral.
2. Otsene adresseerimine - Immediate Addressing
Käsu aadressi osa sisaldabki endas operandi, mitte aadressi või muid instruktsioone,
kust operandi leida. Operand seega laetakse mälust automaatselt samal ajal kui
laetakse käsku ning on kohe kasutamiseks olemas. Nii saab hankida ainult konstante.
3.Kaudne adresseerimine - Indirect Addressing.
Määratava operand tuleb mälust ja läheb mällu, aga tema aadress ei ole
instruktsiooniga püsivalt seotud. Selle asmel säilitatakse aadressi registris. Nii saab
erinevate instruktsiooni täitmistega koos kasutada erinevaid mälu sõnu.
4.Antoinkreventne adresseerimine - Autoincrement Addressing
loetakse operant välja ja aadress säilitatakse modifitseeritult. LIFO- pinumälu,
Pinuosuti (Stack Pointer), CP+1 liidetakse.
5.Autodekrementne - Autodecrement Addressing
lahutamine. (sama, mis eelmisel).
6.Segmenteerimine - Segmentation
vanem osa aadr.-st hoitakse lehekülje nr alles ja modifitseeritakse. Segmendi aadress
+ operandi aadress
7.Adresseerimine indekseerimisega ? Indexed Addressing
käsu juurde kuulub pikk baasaadress ja liidetaske juurde nihe, mis annab uue aadressi.
8.A baseeerimisega ? Based Addressing
Käsukoodi juurde kuulub nihe, mis võib olla lühem kui pikk aadress.
9.A. baseerimine ja indekseerimisega - liidetakse kõik (baas kui ka indeks) kokku.
10.Suhteline adresseerimine - PC - käsuloendur + Nihe ja saadakse uus aadress.
Mikroarvuti riistvara.