262 263

262 263



262

Jest więc obojętne, czy żądany rejestr wskażemy przez podanie jego symbolu literowego, ozy przez odpowiadającą mu cyfrę.

(8)    - etykieta (maksymalnie 5 znaków zaczynających się od litery) umieszczona w polu operandów rozkazu skoku powoduje skok do rozkazu posiadającego taką samą etykietę w polu etykiety.

Np.:    TU : JMP TAM; skocz do rozkazu o etykiecie TAM

TAM : ADD b'

W odróżnieniu od nazwy, której wartość liczbową nadawał programista, etykiecie nadaje wartość program tłumaczący.

(9)    - wyrażenie arytmetyczne lub logiczne, w którym występują dane o postaciach wymienionych w p. (1) + (8), Wyrażenie może zawierać operatory +, -, * (mnożenie),/(dzielenie), MOD (modulo), operatory logiczne NOT,AND, OR, XOR (suma modulo 2), SHR (przesunięcie o jeden bit w prawo), SHL(prz.e-sunięcle o jeden bit w lewo) oraz lewe i prawe nawiasy. Np.

MVX C, 21 + 4AH/2

spowoduje wpisanie do rejestru C liczby 58.

Używając powyżej omówionych sposobów podania informacji można określić cztery wymagane typy informacji, na które składają się:

(a)    - Wskazanie rejestru lub pamięci. Do tego celu mogą służyć dane w postaci (1), (2), (3), (4), (7), lub (9). Np.

MOV A, D; (A)-—(D)

MOV A, £, (A)—(D)

MOY 7, 2; (A) —— (D)

(b)    - Wskazanie pary rejestrów. Pary te są określone następująco (nie można tu używać liczb)

B

B i C

D

D i E

H

Ril

PSW

rejestr A i wskaźniki

SP

16-bitowy wskaźnik stosu.

(c)    - Określenie zawartości 2 lub 2 i 3 bajtu rozkazu. Do podania tej informacji można wykorzystać dowolną z postaci (1) 4 (9)-

Np.:

MVI 4,4    i (H) — 4

INI SP,00F0H SHL 2; (SP) — 03C0H TU :IXI H,TU    ;    (H)(L)-l6-bitowy adres

j rozkazu (wartość etykiety TU)

(d)    - Określenie adresu. Do jego podania służyć może dowolna z postaci (1) - (9) dająca liczbę 16-bitową, np.:

JMP 0A2FH    ;    skok do rozkazu o adresie 0A2FH

JMP START    ;    skok do rozkazu opatrzonego etykie

tą START

Pola komentarza. W pole to można wpisać dowolny komentarz. Komentarz ten służy wygodzie programisty 1 jest Ignorowany przy tłumaczeniu programu. Komentarz musi zaczynać się od średnika (i).

Dyrektywy

Omówione do tej pory rozkazy języka symbolicznego będące literowymi symbolami rozkazów zamieniane są przez assembler na rozkazy maszynowe w tan sposób, że jednemu rozkazowi symbolicznego języka odpowiada Jeden rozkaz maszynowy.

Omawiane poniżej dyrektywy nie występują na liście rozkazów maszynowych i nie są zamieniane bezpośrednio na rozkazy Języka maszynowego, ale służą do starowania procesem translacji, do umieszczania danych w pamięci lub symbolicznego zapisu często powtarzanych ąekwencji rozkazów. Dyrektywy posiadają ten sam format co rozkazy (4 pola), przy czym dodatkowo w polu etykiety może pojawiać się nazwa (informacja typu (7)) nie zakończona ćbm. kropklem.

Poniżej podamy niektóre dyrektywy omawianego języka symbolicznego i funkcje, jakie spełniają.

ORG addx    Początek (Origin)

Program tłumaczący (assembler) zamienia kolejne rozkazy maszynowe przyporządkowując im kolejne adresy w pamięci począwszy od adresu O* Dyrektywa ORG pozwala na dowolne ustawienie adresu rozkazu po niej następującego. Np. dyrektywa

ORG 02FAH

umieszczona na początku programu symbolicznego spowoduje, że wynikowy program maszynowy będzie się zaczynał od adresu 02FAH. Dyrektywę ORG możemy w programie stosować wielokrotnie.

BQU data 16    Podstaw (Eąuate)

Dyrektywa ta nadaje wartość liczbową dowolnej nazwie. Np.

PTAK EQU 26

powoduje, że nazwy PTAK można używać zamiast liczby 26; np. teraz rozkaz

OUT PTAK

spowoduje wysłanie zawartości rejestru A do urządzenia wyjściowego o numerze 26.

Nazwy zdefiniowanej dyrektywą EQO nie można ponownie definiować (nadawać jej nowej wartości).

SET data 16    Ustaw (Set)

Dyrektywa ta wywołuje ten sam skutek co dyrektywa EQU z tym, że można ją stosować w programie wielokrotnie do tej samej nazwy (zmieniając przyporządkowaną jej liczbę).

DB lista


Zdefiniuj bajiy danych (Define Bytes of Data)


Wyszukiwarka

Podobne podstrony:
262 263 262 Jest więc obojętne, czy żądany rejestr wskażemy przez podanie Jego symbolu literowego, c
Kto jest, więc przedsiębiorcę? Czy właściciel kapitału, czy menedżer? W myśl koncepcji Schumpetera
DSC00991 XCVI    JEDNOŚĆ I WIELOŚĆ AKCJI dejce jest właściwie obojętne, czy jest arys
66821 Untitled26 45 44 6. RAM czy SFR ? (y RAM czy SFR ? •    podanie jego symbolu i
jednostka wskazuje sobie jako najważniejszą, z którą się najbardziej identyfikuje, obojętne, czy jes
Czy rodzaj substancji wlewanej do silnika jest obojętny, czy mogłaby to być na przykład oranżada? Co
Droga do samego siebie, samorozumienie, nie jest więc bezpośrednią intuicją czy intro-spekcją, lecz
DSC08810 [ www potrzebujegotowki pl ] Powstaje więc pytanie, czy zarządzanie logistyczne jest jakąś
CCF20130222009 Jest więc człowiekowi potrzebna. Inaczej, ale nie mniej niż zaspokajanie głodu czy z
DSC01411 (5) Czy jest więc jaki powód, dla którego Stwórca byłby niegodny chwały? Przecież człowiek
263 [1024x768] 272 ROZTWORY I RÓWNOWAGI FAZOWE Ścisła definicja fazy jest więc następująca: Fazą naz
44233 skanuj0127 (13) 262 jest do bezpardonowej walki z przedstawicielami przestępczego podziemia, b

więcej podobnych podstron