MOTISMOTIS – język asemblerowy przeznaczony dla minikomputerów serii MERA 300. Instrukcje podstawowePodstawowe instrukcje tego języka stanowią kody mnemoniczne języka wewnętrznego maszyn serii MERA 300. Polecenia te obejmują 34 instrukcje:
Adresowanie pamięciAdres składa się z dwóch części: adresu strony (8 bitów) i adresu słowa (5 bitów), trzy bity pozostają niewykorzystane. W systemie MERA 306 adres podzielony jest na trzy części: pamięć dodatkowo podzielona jest na tomy.
Do adresowania stosuje się operatory specjalne:
umożliwiające różną interpretację i modyfikację adresowania. Rozkazy ekstrakodoweSą to rozkazy realizowane programowo rozszerzająca listę rozkazów systemu MERA 300. Zostały one wprowadzone w celu ułatwienia pisania programów czasu rzeczywistego. Użycie rozkazu ekstrakodowego w asemblerze MOTIS wymaga użycia znaku "*" po skrócie mnemonicznym rozkazu, a przed jego argumentem. Rozkazy ekstrakodowe pozwalają także na użycie stosu systemowego; nie ma takiej możliwości bez ich stosowania, chyba że programista zaprogramuje swój stos. Stałe i teksty
System stosuje dla kodowania znaków zestaw ISO-7. Symbole definiowaneW języku MOTIS można definiować symbole, które zastępują adresy, znaki lub liczby. Repertuar dostępnych symboli (według współczesnej nomenklatury – identyfikatorów), ograniczony jest do symboli Q1-Q77, którym można nadawać nie tylko dowolną wartość ale też symbole te, nie mając określonego typu, mogą być interpretowane jako liczby, znaki, adresy (zmienne), adresy (etykiety instrukcji). Symbol Q identyfikuje licznik adresów (rozkazów). Etkiety Q60-Q77 są wykorzystywane do adresowania podprogramów standardowych. MakrorozkazyMakrorozkazy języka MOTIS to rozszerzenie w stosunku do języka wewnętrznego maszyn serii MERA 300. Translator tłumaczy każdy makrorozkaz na ciągi rozkazów maszynowych. Makrorozkazy asemblera MOTIS są ograniczone do standardowej listy i nie ma możliwości definiowania własnych makrorozkazów. Podprogramy standardoweMOTIS posługuje się liczbami oktalnymi i jednostkami pamięci – słowami (8 bitów – według współczesnej nomenklatury: 1 bajt). Aby ułatwić programowanie została stworzona biblioteka podprogramów standardowych – wbudowanych (adresowanych symbolami Q60-Q77), działających na liczbach poczwórnej precyzji (4 x słowo = 4 bajty), przy czym są to nadal wyłącznie liczby całkowite. Podprogramy standardowe obejmują instrukcje:
MOTIS jako loader i systemAsembler MOTIS jest translatorem, który wpisuje kod wynikowy od razu do pamięci, a więc może pełnić funkcje loadera. Operator systemu miał do dyspozycji zestaw odpowiednich poleceń (oznaczonych literami, np. A, B, G, U itd.), za pomocą których steruje pracą systemu asemblera, jako programu lub systemu operacyjnego. Bibliografia |