SAS (asembler)

SAS (system adresów symbolicznych) − rodzina makroasemblerów polskich komputerów XYZ, ZAM-2 i ZAM-41, oraz radzieckiego komputera Urał 2.

Lista rozkazów

W literaturze podany jest zbiór rozkazów symbolicznych dla maszyny cyfrowej ZAM-2. Obejmuje on 32 pozycje. Liczba rozkazów wynika z liczby bitów przeznaczonej na część operacyjną rozkazu (5).

Kod
operacyjny
MnemonikOpis rozkazu
0SSSkocz i stop.
1WRWykonaj rozkaz wskazany adresem, po czym wróć do wykonywanego programu.
2PGPrzygotuj przepisywanie z wejścia albo bębna do pamięci operacyjnej lub z pamięci na wyjście lub bęben.
3SKSkok bezwarunkowy.
4SZSkocz, jeśli w akumulatorze jest 0.
5SPSkocz, jeśli w akumulatorze jest liczba dodatnia.
6SNSkocz, jeśli został zasygnalizowany nadmiar.
7SWSkocz, jeśli liczba jedynek w przeczytanym rządku taśmy była parzysta.
8SBPrzeskocz dwa rozkazy, jeśli zawartość B-rejestru i wskazanego adresem miejsca pamięci są jednakowe.
9BTBinarna taśma.
10UAUmieścić w akumulatorze liczbę pobraną z pamięci wskazanej adresem.
11UMUmieścić liczbę pobraną z pamięci w rejestrze mnożnika.
12UBUmieścić liczbę pobraną z pamięci w B-rejestrze.
13DBDodaj liczbę pobraną z pamięci do zawartości B-rejestru.
14BBOdejmij liczbę pobraną z pamięci od zawartości B-rejestru.
15RBUmieścić w rejestrze bębnowym liczbę z pamięci wskazanej adresem.
16PPPrzepisz 1 słowo z wejścia lub bębna do pamięci lub z pamięci na bęben albo na wyjście.
17PAPrześlij zawartość akumulatora do miejsca pamięci wskazanego adresem.
18PMPrześlij zawartość rejestru mnożnika do pamięci.
19PBPrześlij zawartość B-rejestru do pamięci.
20OKZaokrąglij zawartość akumulatora i prześlij wynik do pamięci.
21LWPrzesuń w lewo łączną zawartość akumulatora i rejestru mnożnika.
22PWPrzesuń w prawo łączną zawartość akumulatora i rejestru mnożnika.
23LCPrzesuń cyklicznie w lewo zawartość akumulatora.
24DODodaj słowo pobrane z pamięci do zawartości akumulatora.
25ODOdejmij słowo pobrane z pamięci od zawartości akumulatora.
26OBOdejmuj wartość bezwzględną słowa pobranego z pamięci od wartości bezwzględnej zawartości akumulatora.
27MNPomnóż słowo z pamięci przez zawartość rejestru mnożnika. 70-bitowy wynik umieścić w akumulatorze i rejestrze mnożnika traktowanych jako całość.
28DZŁączną zawartość akumulatora i rejestru mnożnika podziel przez liczbę pobraną z pamięci, iloraz umieścić w rejestrze mnożnika, resztę w akumulatorze.
29KOOblicz koniunkcję zawartości rejestru mnożnika i słowa pobranego z pamięci i zapisz ją w akumulatorze.
30ALOblicz alternatywę słowa pobranego z pamięci i zawartości akumulatora.
31NINic nie rób.

Bibliografia

  • K. Fiałkowski: Autokody i programowanie maszyn cyfrowych. Warszawa: WNT, 1976.