Z A K Ł A D D O Ś W I A D C Z A L N Y MINIKOMPUTERÓW
( Opi s w y ł ą c z n i e do c e l ó w s z k o l e n i o w y c h )
JĘZYK OPERACYJNY M A S Z Y N Y -J O M 1
OŚRODEK DOSKONALENIA KADR TECHNICZNYCH O W / N O T
W a r s z a w a 1 9 7 3
Str.
v 1. PRZEZNACZENIE JĘZYKA OPERACYJNEGO MASZYNY J O M K-202 3
2. DYREKTYWY JOM 1 . ... .. 4
2.1. Uwagi ogólne ... ... .. A 2.1.1. Podawanie dyrektyw . . . 4
2.1.2. Kasowanie niezakończonej dyrektywy . • 4 2.1*3. Znaczenie p a r a m e t r u adres 2 . . . A 2*1.4. śledzenie programu ... . . 5
2.2. Definicje i o z n a c z e n i a ... 5
2.3*.Opis dyrektyw JOM 1 ... . 6
2.3.1. Wyprowadź taśmę b i n a r ną . . . 6
2.3*2. Wczytaj taśmę b inarną . . . 6
2.3*3. Startuj od początku wprowadzenia . . . 6
2.3.4. Startuj od adresu . . . 7
2.3.5. Startuj w e d ł u g stanu IC . . . . 7
2.3.6. Podaj stan rejestrów . . . 7
2.3.7» Podaj stan rejestru . . . 7
2.3.8* Podaj stan IC . . . ... .... 8
2.3.9. Zapisz do r e j e s t r u . 8
2 . 3 . 1 0 . Zapisz do IC . . . . 8
2 . 3 . H » Z a p i s z do p amięci . . . 8
2.3.12.Podaj post-mortera oktalnie . . . 9
2,3.13-.Podaj p o s t - m o r t e m dziesiętnie . . . 9
2.3.14.Podaj post-mortem rozkazowy ... .. 9
2 , 3 . 1 5.8staw p o w r ó t do S ystemu . . . 9
2 . 3 . 1 6 . Regeneruj p r o g r a m ... 10
3. ALARMY JOM-u ... 10
4. ALARMY S Y STEMU O P E R A C Y J N E G O ... ... 11 SPIS TREŚCI
1. PRZ E Z N A C Z E N I E J§ZYKA OPERACYJNEGO MASZYNY JOM K-202
J O M 1 jako p r og r a m jest c z ęścią S y stemu Operacyjnego SOK-1 i służy do dwustronnej wymiany informacji między opera torem i S O K-202. Jako język program o w a n i a JOM 1 prze d s t a w ia sobą zbiór d y r ektyw o charakterze zleceń operatorskich dla Systemu SOK-1.
W dalszej części opisu p ojęcie "JO M ” będzie używane równo l e g le w znaczeniu "język pr o g r a m o w a n i a ” i "PROGRAM - część SO", natomiast aktualna znaczenie będzie wynikało • z kontekstu. Komu n i k a c j a operator-SOK-1 możliwa jest jedynie prz y pom o c y dyrektyw JOM-u.
Infor m a c ja p o dawana przez System Operacyjny ma dwojaki charakterj m oż e być to zatem:
a/ w y d r u k typu post-mortem; jest to odpow i e d ź na odpowiednią d yrektywę JOM-u,
b/ wydruk alarmowy, stanowiący albo sygnalizację błędu w dy
r e k t y w i e / o k r e ś l a n y dalej w opisie jako alarm JOM-u/,albo sygnalizację b ł ę d u w trakcie w y k o n y w a n i a p r o g ra m u uż y t k ó w n ika /okreś l a n y dalej jako alarm Systemu Operacyjnego/.
Sys t e m Opera c y j n y SOK-1 przyjmuje i wydaje informacje jedy - n ie n a m o n i t o r z e Systemu.
J ę z y k Operacyjny M aszyny umożliwia:
1/ w y p r ow a d z e n i e i wpr o wa d z e n i e taśmy binarnej, 2/ w y s t a r t o w a n i e z d o w olnym programem,
3 / zmianę stanu rejestrów, licznika r o z k a z ó w IC oraz pamięci o peracyjnej PAO,
4-/ restart,
5/ o k r e ś l e n i e stanu IC i rejestrów,
•3
6/ wyprowadzenie po s t - m o rt e m ó w oktalnych, dziesiętnych i roz kazowych,
7/ śledzenie p r o gr a m u użytkownika.
2. DYREKTYWY JOM 1
2.1. Uwagi ogólne
2.1.1. P°óawanie_djrrekt^w
Podawanie d y r ektyw jest możliwe tylko wówczas,, gdy JOM sygnalizuje gotowość p r z y j ę c i a dyrektywy wydru ki e m znaku: na początku nowej linii. JOM generuje n ową linię i dwukr o p e k w następu j ą c y c h przypadkach:
1/ po w y w o ł a n i u SOK-1 z kluczy bąd ź dekl a r a c j a OS z t ransla
tora, ASSK,
2/ po w y k o n a n i u r o z k a z u ex, arg 2. esys., 3/ p o ‘ alarmie JOM-u,
4 / po alarmie systemowym,
5/ po w y k o n a n i u p o p r z e d n i e j ,dyrektywy.
W p r z y p a d k a c h 1, 2, 4 dodatkowo w po p r z e d z a j ą c y m w i e r s z u dru kowany jest tekst K-202.
2.1.2. Kasowanie_niezakończonej_djrrektjrw^
M o żliwe jest k a s o wanie niezakończonej dyrektywy p r z e z po d a ni e z na k u nl.
2.1.3. Znaczenie p a r a m etru a d r e s 2
W d y r ektywach d w u a d r e s o w y c h p a r ametr adres 2 jest trak towany prz e z JOM:
a/ b e z p o ś r e d n i o jako adres końcowy, gdy adres 2 > adres 1,
.4
b/ jako liczba służąca do obliczenia adresu końcowego, gdy adres 2 jest poprzedzony znakiem + lub -. W tym przyp a d ku adres końcowy = adres 1 + adres 2,
c/ gńy adres 2 C adres 1 adres końcowy jest równy adres 1.
2.1*4-. Śledzenie grograrau
Dyrektywy T i ST pozwa l a j ą na nieniszczący powrót do systemu z wykonywanego programu, wykonanie przy pomocy in
nych dyrektyw JOM - u dowolnych manipulacji na rejestrach,licz nik u r o z k a z ó w i pamięci maszyny, a następnie kontynuację pro gramu od miejsca, gdzie został przerwany /lub od dowolnego innego, wskaz a n e g o przez aktualny stan IC/ przy pomocy dyrek tywy RS.
2.2. Definicja i oznaczenia
Użyte w dalszym opisie pojęcia definiuje się na s t ę p u - jąco:
¿ p a r a m e t r > ::= < liczba krótka>| ; <parametr> + ¿liczba krótka>l
< para m e t r > - ¿liczba k r ó t k a >
< c i ą g p a r am e t r ó w * /parametru ;l < c i ą g p a r a m e t r ó w > ¿para - metr> ;
<nr r e j e s t r u > :x= 0 | 1 | 2 I 3 I 4 - I 5 l 6 l ?
¿ a dres} :;s ¿para m et r >
< k o d d y r e k t y w y > :: = RB I W B j A \ G 1 RS I R \ R ¿ n r r e j e s t r u H IC 1 S 1 0 I D 1 P I T I RT
¿dyrektywa} :: = < k o d dyrektywy/ *l < k o d dyrektywy} « ¿ p a r a - m e t r > ;i
5
¿ k o d d y r e k t y w y / « ¿ p a r a m e t r / j ¿ p a r a m e t r / ;(
< k o d d y r e k t y w y / = ¿ p a r a m e t r / ;
2.3. O pis dyrektyw J O M 1
2.3.1. W y p r owadź taśm£ bi n a r n ą
Zapis: W B * <adres 1/ ; < adres 2 > ;
Znaczenie: Zlecenie w y p r ow adzenia binarnie zawartości PAO od a dresu 1 do adresu 2 włącznie. Wyprowadzana przy pom o c y tej dyrektywy taśma bi n a r n a opatrzona jes t na począ t k u znakiem ? i adresem p o c z ą t k u wprowa - dzania /adres 1/. Na koń c u wyprowadzonej taśmy jest umieszczona obliczona suma kontrolna.
Przykłady: WB « 0400; 0500;
WB H 0400; + 5;
/ ' ’ ' - >
2.3.2. W c z y t a j t a śmę b i n a r ny Zapis: RB *
Znaczenie: Zlecenie wpro w a d z e n i a taśmy binarnej, która była wyp r o d u k o w a n a przy pomocy dyrektywy WB. Na monito rze systemu jest wpisywany adres p o c z ą t k u wpr o w a dzania do PAO / a d r e s 1 z dyrektywy WB/.
2.3.3. Startuj od p o c z g t k u wpr o w a d ze n i a
Zapis: A* •
Znaczenie: Zlecenie startu p r o g r a m u od p o c z ą t k u adresu w p r o w a d z a n i a ostatniej wprowadzonej taśmy binarnej.
Przed startem r e j estry są zerowane.
2,3.4-. Startu^_od_adresu Zapis:_G* < a d r e s >
Znaczenie: Zlecenie startu programu od p o d anego adresu.Przed startem rejestry są zerowane.
2.3.5* Startuj_według_stanu_IC Zapis: RS *
Znaczenie: Zlecenie startu programu od adresu ustawionego w IC, bez zmiany stanu rejes t r ó w /tzn. z odtworzę - n iem zawartości rejestrów/, szczególnie użyteczne jako restart.
2.3.6. P£Óaj._stan_re^estrów
Zapis; R k
Znaczenie; Zlecenie w y d r u k u stanu rejes t r ó w R0-R7. Zawartość r e j e s t r u R O drukowana w p i er w s z y m w i e r s z u p o da n a jest w postaci nazw bitów, które są jedynkami.
Zawartość R1-R7 podawane są w drug i m w i e r s z u jako c i ą g liczb oktalnych.
2.3.7. £oóa^_stan_rejestru Zapis: R < n r r e j e s t r u > *
Znaczenie: Zlecenie w y d r u k u stanu wska z a n e g o rejestru. Zawar tość r e j estru drukowana jest jako liczba oktalna.
W p r z y p a d k u RO zawartość tego r e j e s t r u druko w a n a jest w postaci opisanej w p un k c i e 2.3.6.
Przykład: R $ *
.7
2.3.8. Poda^_stan_IC Zapis: IC h
Znaczenie: Zlecenie w y d r u k u stanu IC. Zawartość IC drukowana jest jako liczba oktalna.
2.3.9. Zagisz_do_re£estru
Zapis: R < n r r e j e s t r u > = < p a r a m e t r > ;
Znaczenie: Zlecenie zapisu pa r a m e t r u do wska z a ne g o rejestru.
Przykłady: R1 = 0200;
R2 = 135 + 020;
2.3.10. Za£isz_do_IC
Zapis: IC = < p a r a m e t r > ;
Znaczenie: Zlecenie zapisu liczby /sumy liczb/ do IC.
2.3.11. 2a£isz_do_£ami£ci
Zapis: S k < a d r e s > ; < c i ą g p a r a m e t r ó w >
Znaczenie: Zlecenie zapisu w PAO p oczynając od wska za n e g o ad r e s u w kolejnych komórkach p o d a n y c h parametrów.
Przejście J O M - u na nasłuch nie jest w tym w y p a d k u sygnalizowane n o w ą linią i :, a samą now ą linią.
Wyjście z c z y tania cią g u p a r a m e t r ó w następuje po p o d a n i u dowolnej dyrektywy.
Przykłady: S *f 0600;
34;
2 2
;
S * 0500;
-1;
S
2 3.12. Poda^ po5t~mortem oktalnie Zapis: 0 st < adres 1> ; 4 adres 2 > ;
Znaczenie: Zlecenie wydruku oktalnego obszaru PAO poczynając od komórki wskazanej przez adres 1 a kończąc na komórce wskazanej przez adres końcowy /patrz
2.1.3./» Wydruk zawartości każdej z tych komórek poprzedzony jest drukiem adresu komórki; w każdym w i erszu drukowane są zatem dwie liczby oktalne, z których pierw s za jest adresem, a druga zawarto - ścią komórki.
Przykłady: 0 « 0500; 0525;
0 h 800; + 3;
2.3»13. Poda^ g o s t - m o r tem_dzi.esigtnie Zapis: D * < adres 1> ; <adres 2 > ;
Znaczenie: Zlecenie wydruku dziesiętnego wskazanego obszaru PAO. W każdym w i erszu podawany jest adres oktalny komórki i jej zawartość dziesiętnie.
2 .3 .1 4 -. ££óąi_E2£t-mortera_rozkazowjr
Zapis: P h < adres 1 > ; < adres 2 > ;
Znaczenie: Zlecenie w y druku wskazanego o b szaru PAO jako cią
g u rozkazów. W k ażdym w ie r s z u podawany jest adres r o zkazu / p o c z ą t ek rozkazu/ i rozkaz.
2.3.15. U staw powrót do Systemu Zapis: T * ¿ a d r e s y ;
9
Znaczenie: Zlecenie w p i s a n i a p o d wskazany adres ekstrakodu ex, 4-.esys. Dotychczasowa zawartość dwóch komórek /poczynając od wskazanego adresu/ zostaje przecho w ana przez System. Użycie dwóch dyrektyw T bez p rzedzielenia ich dyrektywą RT spowoduje znie - kształcenie programu; System umożliwia p r z e c h o w a nie tylko dwóch komórek p r o g r a m u na raz. Przecho-
/
wywane są zawsze komórki p r o g r a m u spod adresu uży tego w ostatniej dyrektywie T.
2 . 3 . 16 .
Zapis: RT *
Znaczenie: Zlecenie w p i s a n i a do komórek wskaz a n y c h przez ad
r e s występujący w ostatnio użytej dyrektywie T ich poprzedniej zawartości w m iejsce r o z k a z u ex, 4.esys. Jednocześnie do komórki z IC zostaje zapi
sany adres użyty w ostatniej dyrektywie T.
3. ALARMY JOM - u
Alarmy JOM - u m a j ą postać standardowych t e kstów i w y p i sywane są b e z p o średnio p o stwierdzeniu p r z e z J O M b ł ę d u w dy
rektywie. Po wypis a n i u od p o w i edniego tekstu J O M p r zechodzi na nasłuch. Poniżej pod a n e zo s t a n ą teksty standardowe alar - '
O
m ó w J O M - u i ich znaczenia.
ADDRESS - Odwołanie się do nieist ni e j ą c e g o adresu;
C O N T R O L S U M - Oblic z e ni a przy w c z y t y w a n i u taśmy binarnej su
m a kontr o l n a niezgo d n a z s u m ą k o n t r o l n ą obli - czo n ą przy wyprowadzaniu;
* 10
SYNTAX - Błąd syntaktyczny w dyrektywie;
C H A R A C T E R - Zły znak w liczbie;
O V E RFLOW - Arytmetyczny nadmiar parametru.
4-, A L A R M Y SYSTEMU OPERACYJNEGO
Alarmy Systemu Operacyjnego m a j ą p ostać wydruków typu;
ALA R M < liczba 1> liczba 2 > < t e k s t >
Poniżej podane zo s ta n ą teksty i ich znaczenia oraz znaczenie p a r a m e t r u “liczba 2 M przy po s z c z e g ó l n y c h alarmach.
Parametr “ liczba 1“ jest adresem pierwszej komórki za rozka
zem, p ró b a wykonania którego spowodowała wywołanie alarmu.
WRONG I/O NUMBER
WRO N G PARAMETER
WRONG EXTRACODE
W R O N G A D DRESS
OPERATOR INTERRUPT
W R O N G INSTRUCTION
- n i e w ł a ś c i w y symboliczny numer we-wy, użyty w ekstrakodzie,
liczba
2
- symboliczny numer we-wy.- niewłaściwy parametr ekstrakodu, liczba
2
- wartość parametru.- użycie nieistniejącego ekstrakodu, liczba
2
- nr wywołanego extrakodu.- błędny adres /nieistniejący/, liczba 2 - nie istnieje.
- przerwanie zgłoszenia operatora, . liczba
2
- nie istnieje.- rozkaz o nieistniejącym kodzie, lub rozkaz nielegalny
liczba
2
- zawartość komórki o adresie o 1 mniejszym od liczby 1,11
FINISH
F.P. OVERFLOW
NOT CONNE C T E D T E R MI N A L
wystąpił ekstrakod ESYS,
liczba 2 - argument 2 ekstrakodu ESYS.
Gdy arg 2 = 0 następuje przejście do JOM - u bez sygnalizacji alarmowej, nadmiar zmiennoprzecinkowy,
l iczba 2 - nie istnieje,
nie p r z yłączone u rządzenie we-wy, liczba 2 - symboliczny nr urządzenia w e - w y .
12