Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
adresowanie i rozkazy
1.
2. Formatem rozkazu - nazywamy sposób
rozmieszczenia informacji w kodzie rozkazu.
Trybem adresowania - nazywamy sposób
określenia miejsca przechowywania argumentów
rozkazu.
Lista rozkazów procesora (ang. instruction
set) – zestaw podstawowych instrukcji, jakie
dany procesor potrafi wykonać.
3. Argumenty rozkazu mogą być przechowywane w rejestrach,
w pamięci lub w kodzie rozkazu.
Adresowanie natychmiastowe
Adresowanie bezpośrednie
Adresowanie rejestrowe
Adresowanie pośrednie
Adresowanie indeksowe z przemieszczeniem
4. KOD ADRES (argument)
✦ Argument (operand) jest częścią rozkazu zatem
musi być znany w momencie pisania programu
✦ Nie ma odniesienia do pamięci w celu pobrania
argumentu
✦ Zaoszczędzony jeden cykl pamięci
✦ Wielkość operandu ograniczona przez rozmiar
pola adresowego
Rozkaz
5. MOV A,#25; zapisz do A wartość dziesiętną = 25
MOV A,#25H; zapisz do A wartość heksadecymalną = 25
MOV A,#100011B; zapisz do A wartość binarną = 100011
ADD A,#25; dodaj do A wartość dziesiętną = 25
ADD A,#25H; dodaj do A wartość heksadecymalną = 25
ADD A,#11111B; dodaj do A wartość binarną = 11111
6. Przy adresowaniu bezpośrednim kod rozkazu zawiera adres
komórki pamięci, w której przechowywany jest argument (operand).
KOD ADRES
Rozkaz
Zakres adresacji ograniczony przez wielkość pola adresowego
7. MOV A,25; zapisz do A argument z komórki pamięci o adresie 25(10)
MOV A,25H; zapisz do A argument z komórki pamięci o adresie 25(16)
MOV A,101010B; zapisz do A argument z komórki pamięci o adresie 101010(2)
ADD A,25; dodaj do A argument z komórki pamięci o adresie 25(10)
ADD A,25H; dodaj do A argument z komórki pamięci o adresie 25(16)
ADD A,101010B; dodaj do A argument z komórki pamięci o adresie 101010(2)
8. Przy adresowaniu rejestrowym w kodzie rozkazu określony jest
rejestr, w którym przechowywany jest argument.
Zaletami użycia tego trybu adresowania są krótkie kody rozkazów
oraz szybkie ich wykonywanie.
9. Argument (operand) znajduje się w rejestrze określonym
w polu adresowym
✦ Ograniczona liczba rejestrów (32)
✦ Małe pole adresowe (zwykle 3 do 5 bitów)
✦ krótsze rozkazy i czas pobrania z rejestru
✦ Ograniczona przestrzeń adresowa
10. Adresowanie pośrednie, zwane też adresowaniem rejestrowym
pośrednim, umożliwia modyfikację położenia argumentu w pamięci w
trakcie wykonywania programu.
W rozkazie znajduje się numer rejestru który zawiera adres
komórki pamięci z argumentem.
11. Przykłady:
MOV A,@R1; zapisz do A argument z komórki
pamięci o adresie zapisanym w rejestrze R1
ADD A,@R1; dodaj do A argument z komórki
pamięci o adresie zapisanym w rejestrze R1
MOV 25, #25; zapisz do komórki pamięci o adresie 25(10) wartość dziesiętną 25
MOV @R1,25H; zapisz do komórki pamięci o adresie z rejestru R1
wartość z komórki pamięci o adresie 25(16)
MOV #25,25H; BŁĘDNE!!!