EMAS: Różnice pomiędzy wersjami

Przejdź do nawigacji Przejdź do wyszukiwania
Dodane 131 bajtów ,  26 stycznia
 
Linia 391: Linia 391:
EMAS używa mnemoników z [[Lista rozkazów|oryginalnej listy rozkazów]] MERY-400, ale wprowadza zmiany składniowe wynikające z innego zapisu argumentu normalnego. Nie używa przyrostków zależnych od lokalizacji argumentu. Czyli np. rozkaz ```LWn`` z listy rozkazów, gdzie ```n``` zmienia się w zależności od typu argumentu normalnego, ma zawsze mnemonik ```LW```. Lokalizację argumentu określa składnia dla rejestrów rB i rC. Poniższe przykłady ładowania wartości do rejestru r1 przedstawiają wszystkie możliwe postacie argumentu normalnego:
EMAS używa mnemoników z [[Lista rozkazów|oryginalnej listy rozkazów]] MERY-400, ale wprowadza zmiany składniowe wynikające z innego zapisu argumentu normalnego. Nie używa przyrostków zależnych od lokalizacji argumentu. Czyli np. rozkaz ```LWn`` z listy rozkazów, gdzie ```n``` zmienia się w zależności od typu argumentu normalnego, ma zawsze mnemonik ```LW```. Lokalizację argumentu określa składnia dla rejestrów rB i rC. Poniższe przykłady ładowania wartości do rejestru r1 przedstawiają wszystkie możliwe postacie argumentu normalnego:
* LW r1, r2 - ładowana jest wartość z rejestru r2
* LW r1, r2 - ładowana jest wartość z rejestru r2
* LW r1, r2+r3 - ładowana jest wartość z rejestru r2 B-modyfikowana (sumowana z) rejestrem r3
* LW r1, r2+r3 - ładowana jest wartość z rejestru r2 sumowana z (B-modyfikowana) rejestrem r3
* LW r1, [r2] - ładowana jest wartość z komórki pamięci (D-modyfikacja) wskazanej zawartością rejestru r2
* LW r1, [r2] - ładowana jest wartość z komórki pamięci (D-modyfikacja) wskazanej zawartością rejestru r2
* LW r1, [r2+r3] - ładowana jest wartość z komórki pamięci (D-modyfikacja) wskazanej zawartością rejestru r2 B-modyfikowanego (sumowanego z) rejestrem r3
* LW r1, [r2+r3] - ładowana jest wartość z komórki pamięci (D-modyfikacja) wskazanej zawartością rejestru r2 sumowanego z (B-modyfikowanego) rejestrem r3
* LW r1, 0x1000 - ładowana jest wartość 0x1000
* LW r1, 0x1000 - ładowana jest wartość 0x1000
* LW r1, 0x1000+r2 - ładowana jest wartość 0x1000 B-modyfikowana zawartością (sumowana z) rejestru r2
* LW r1, 0x1000+r2 - ładowana jest wartość 0x1000 sumowana z (B-modyfikowana) rejestrem r2
* LW r1, [0x1000] - ładowana jest wartość z komórki pamięci (D-modyfikacja) o adresie 0x1000
* LW r1, [0x1000] - ładowana jest wartość z komórki pamięci (D-modyfikacja) o adresie 0x1000
* LW r1, [x1000+r2] - ładowana jest wartość z komórki pamięci (D-modyfikacja) o adresie 0x1000 B-modyfikowanym zawartością rejestru r2
* LW r1, [0x1000+r2] - ładowana jest wartość z komórki pamięci (D-modyfikacja) o adresie 0x1000 sumowana z (B-modyfikowanym) zawartością rejestru r2
 
Przykłady użycia rozkazów z argumentem krótkim:
* LWT r1, 12
* AWT r1, -5
* RWS r1, etykieta
* UJS -1
* UJS etykieta
* SHC 2


= Pliki nagłówkowe =  
= Pliki nagłówkowe =  

Menu nawigacyjne