Přesuny dat „podruhé“
Přímá adresace:
Je to to nejednoduší nastavení místa v paměti, kdy se ukládá číslo:
nebo jiné místo v paměti:
Nepřímá adresace:
Kdežto nepřímá adresace je sice složitější, ale efektivnější v použití, například ve smyčkách.
Přesnější vysvětlení:
Ještě pro příklad, kdybych nastavil registr R1 na hodnotu 36 hexa, pak po příkazu MOV @R1, #25 by se nepřesunula hodnota 25 do registru R1, ale do místa v paměti, přesněji na místo 36 hexa.
A na závěr vyřešení domácího úkolu :
MOV 28H, #10110101B ;nastavení hodnoty B5 v binárním kódu na adresu 28H
MOV R0, #28H ;nastavení R0 pro nepřímou adresaci
DATA1 EQU 55H ;přiřazení proměnné DATA1 adrese 55H
MOV DATA1, @R0 ;zkopírování z adresy 28H do DATA1 (nepř. adr.)
MOV P0, DATA1 ;přesunutí hodnoty z DATA1 na port P0