Symulator EMC ODRA-1204: Różnice pomiędzy wersjami

Przejdź do nawigacji Przejdź do wyszukiwania
brak opisu edycji
Nie podano opisu zmian
Nie podano opisu zmian
 
(Nie pokazano 7 pośrednich wersji utworzonych przez tego samego użytkownika)
Linia 156: Linia 156:
# W := P.
# W := P.


'''PL P'' - podstawienie do licznika rozkazów.
'''PL P''' - podstawienie do licznika rozkazów.
# <tt>STOP</tt>, <tt>RUNNING</tt>.
# <tt>STOP</tt>, <tt>RUNNING</tt>.
# L := P.
# L := P.
Linia 197: Linia 197:
# Równoważna operacja programu w ALGOLu-1204.
# Równoważna operacja programu w ALGOLu-1204.


KOMÓRKA 21.
'''KOMÓRKA 21.'''


1. Zakres pierwszego bloku programu zawierającego komórki
# Zakres pierwszego bloku programu zawierającego komórki o adresach: 1, 2, 3, ..., k(21).
o adresach: 1, 2,3,....,k(21).
# D 21.
2. D 21.
# Można zmienić stosując rozkazy w kodzie wewnętrznym.
3. Można zmienić stosując rozkazy w kodzie wewnętrznym.


'''KOMÓRKA 22.'''


KOMÓRKA 22.
# Adres początku drugiego bloku programu zawierającego komórki o adresach: K(22), K(22)+1, ..., 34737.
# D 22.
# Można zmienić stosując rozkazy w kodzie wewnętrznym.


1. Adres początku drugiego bloku programu zawierającego
'''KOMÓRKA 23.'''
komórki o adresach:
K(22),K(22)+1,...., 34737.
2. D 22.
3. Można zmienić stosując rozkazy w kodzie wewnętrznym.


# Wartość zmiennej standardowej time (w sekundach).
# P 23 0. PT 14 25 36.
# Time := 0 ; lub zerk (time).


KOMÓRKA 23.
'''KOMÓRKA 31.'''


1. Wartość zmiennej standardowej time (w sekundach).
# Numer wejścia aktualnego.
2. P 23 0. PT 14 25 36.
# P 31 1.
3. Time := 0 ; lub zerk (time).
# Setinput /10.


'''KOMÓRKA 32.'''


KOMÓRKA 31.
# Numer wyjścia aktualnego.
# P 32 1.
# Setotput /1.


1. Numer wejścia aktualnego.
'''KOMÓRKA 33.'''
2. P 31 1.
3. Setinput /10.


# Wartość zmiennej lastchar tzn. ostatnio wczytany znak.
# D 33.
# Print (lastchar).


KOMÓRKA 32.
'''KOMÓRKA 34.'''


1. Numer wyjścia aktualnego.
# Wartość zmiennej lastinteger tzn. ostatnio wczytana liczba typu integer.
2. P 32 1.
# D 34.
3. Setotput /1.
# Print (lastinteger).


'''KOMÓRKI 35 i 36.'''


KOMÓRKA 33.
# Wartość zmiennej lastreal tzn. ostatnia liczba typu real.
# D 35 ; D 36.
# Print (lastreal).


1. Wartość zmiennej lastchar tzn. ostatnio
'''KOMÓRKA 41.'''
wczytany znak.
2. D 33.
3. Print (lastchar).
 
 
KOMÓRKA 34.
 
1. Wartość zmiennej lastinteger tzn. ostatnio wczytana
liczba typu integer.
2. D 34.
3. Print (lastinteger).
 
 
KOMÓRKI 35 i 36.
 
1. Wartość zmiennej lastreal tzn. ostatnia liczba typu real.
2. D 35 ; D 36.
3. Print (lastreal).
 
 
KOMÓRKA 41.
 
1. Długość bufora czytnika.
2. P 41 1.
3. Można zmienić stosując rozkazy w kodzie wewnętrznym.


# Długość bufora czytnika.
# P 41 1.
# Można zmienić stosując rozkazy w kodzie wewnętrznym.


== Wprowadzenie i uruchamianie programów użytkowych ==
== Wprowadzenie i uruchamianie programów użytkowych ==
Linia 269: Linia 255:
Pod kontrolą systemu MASON mogą pracować programy użytkowe wydziurkowane na taśmie papierowej wyprodukowane przez translator ALGOL 1204 (B) na zlecenie "PBT", lub przez system operacyjny na zlecenie "DUMP". Programy binarne wyprodukowane przez translator wymagają wprowadzenia podprogramów pomocniczych (PP). Podprogramy pomocnicze muszą być tego samego wydania co translator ALGOL-u użyty do tłumaczenia tego programu. A więc program wyprodukowany przez translator ALGOL-u (B) wyd. II należy uruchamiać następująco:
Pod kontrolą systemu MASON mogą pracować programy użytkowe wydziurkowane na taśmie papierowej wyprodukowane przez translator ALGOL 1204 (B) na zlecenie "PBT", lub przez system operacyjny na zlecenie "DUMP". Programy binarne wyprodukowane przez translator wymagają wprowadzenia podprogramów pomocniczych (PP). Podprogramy pomocnicze muszą być tego samego wydania co translator ALGOL-u użyty do tłumaczenia tego programu. A więc program wyprodukowany przez translator ALGOL-u (B) wyd. II należy uruchamiać następująco:


* wczytać podprogramy pomocnicze zleceniem LOAD (odpowiedź maszyny LOADED)
* wczytać podprogramy pomocnicze zleceniem '''LOAD''' (odpowiedź maszyny <tt>LOADED</tt>)
* wczytać program użytkowy zleceniem LOAD (odpowiedź maszyny LOADED)
* wczytać program użytkowy zleceniem '''LOAD''' (odpowiedź maszyny <tt>LOADED</tt>)
* uruchomić program zleceniami W, W0, W1.
* uruchomić program zleceniami W, W0, W1.


Linia 279: Linia 265:
Zlecenia niestandardowe służą do uruchamiania programu użytkowego. Wszystkie zlecenia niestandardowe są wykonalne w stanie STOP. Zlecenie niestandardowe nie posiadają parametrów. Nazwa tych zleceń składa się z liter i cyfr o maksymalnej długości czterech znaków rozpoczynających się literą. Pozostałe zasady dotyczące tych zleceń są identyczne z zleceniami standardowymi systemu MASON opisanymi w rozdziale 3.3. Poniżej są zestawione wszystkie zlecenia niestandardowe używane przez programy użytkowe.
Zlecenia niestandardowe służą do uruchamiania programu użytkowego. Wszystkie zlecenia niestandardowe są wykonalne w stanie STOP. Zlecenie niestandardowe nie posiadają parametrów. Nazwa tych zleceń składa się z liter i cyfr o maksymalnej długości czterech znaków rozpoczynających się literą. Pozostałe zasady dotyczące tych zleceń są identyczne z zleceniami standardowymi systemu MASON opisanymi w rozdziale 3.3. Poniżej są zestawione wszystkie zlecenia niestandardowe używane przez programy użytkowe.


W. - wykonanie instrukcji: Setinput(1); Setoutput(1)
'''W'''
* uruchomienie programu od początku.
: Wykonanie instrukcji: <tt>Setinput(1); Setoutput(1)</tt>, uruchomienie programu od początku.
END - program wykonano do końca - do ostatniego end. Inne sygnały podano w wykazach sygnałów systemu MASON oraz translatora ALGOL 1204.
 
 
W0. - wykonanie instrukcji setinput(0); setoutput(0) i uruchomienie programu od początku.
 
 
W1. - wykonanie instrukcji setinput(1); setoutput(0) i uruchomienie programu od początku.
 
 
DITR.- drukowanie śladu retroaktywnego.
END - ślad wydrukowano.
SORRY - w programie nie ma możliwości drukowania śladu.
 
 
TMON.- przejście do wykonania programu:
 
begin
setinput(1);
setoutput(0);
L: outchar(inchar);
goto L
end


bez niszczenia zapisu programu lub translatora w pamięci operacyjnej.
'''END'''
: Program wykonano do końca - do ostatniego <tt>end</tt>. Inne sygnały podano w wykazach sygnałów systemu MASON oraz translatora ALGOL 1204.


Zlecenie umożliwia drukowanie krótkich tasiemek w kodzie OPTIMA lub ISO-7 na monitorze. Jeżeli w czasie wykonywania tego zlecenia jest wciśnięty klawisz 0, to wyjściem aktualnym jest perforator. Umożliwia to kopiowanie tasiemek, ewentualnie z tłumaczeniem z jednego kodu na drugi.
'''W0'''
STOP - operator przerwał działanie programu.
: Wykonanie instrukcji <tt>setinput(0); setoutput(0)</tt> i uruchomienie programu od początku.


'''W1'''
: Wykonanie instrukcji <tt>setinput(1); setoutput(0)</tt> i uruchomienie programu od początku.


MONT.- przejście do wykonania programu:
'''DITR'''
: Drukowanie śladu retroaktywnego.


'''END'''


: Ślad wydrukowano.


'''SORRY'''
: W programie nie ma możliwości drukowania śladu.


begin
'''TMON'''
setinput(0);
: Przejście do wykonania programu:
setoutput(1);
begin
L: outchar(inchar);
setinput(1);
goto L
setoutput(0);
end
L: outchar(inchar);
goto L
end
: bez niszczenia zapisu programu lub translatora w pamięci operacyjnej. Zlecenie umożliwia drukowanie krótkich tasiemek w kodzie OPTIMA lub ISO-7 na monitorze. Jeżeli w czasie wykonywania tego zlecenia jest wciśnięty klawisz 0, to wyjściem aktualnym jest perforator. Umożliwia to kopiowanie tasiemek, ewentualnie z tłumaczeniem z jednego kodu na drugi. <tt>STOP</tt> - operator przerwał działanie programu.


bez niszczenia zapisu programu lub translatora w pamięci operacyjnej.
'''MONT'''
zlecenie umożliwia perforacje krótkich tasiemek w kodzie
: Przejście do wykonania programu:
OPTIMA lub ISO-7 na perforatorze.
begin
STOP - operator przerwał działanie powyższego programu.
setinput(0);
setoutput(1);
L: outchar(inchar);
goto L
end
: bez niszczenia zapisu programu lub translatora w pamięci operacyjnej. Zlecenie umożliwia perforacje krótkich tasiemek w kodzie OPTIMA lub ISO-7 na perforatorze. <tt>STOP</tt> - operator przerwał działanie powyższego programu.


= Literatura =
= Literatura =
Linia 341: Linia 321:
# "Pakiet testów tom 2", ELWRO, Wrocław 1970 Nr. 1204-III-20, 31, 32.
# "Pakiet testów tom 2", ELWRO, Wrocław 1970 Nr. 1204-III-20, 31, 32.
# "Pakiet podprogramów pomocniczych", ELWRO, Wrocław 1968 Nr. 1204-V-3.
# "Pakiet podprogramów pomocniczych", ELWRO, Wrocław 1968 Nr. 1204-V-3.
# "System operacyjny CROOK-4 dla minikomputera Mera-400", Andrzej Bobcow, Zbigniew Czerniak, Marek Nikodemski, IOPG, Gdańsk 1985.  
# "System operacyjny CROOK-4 dla minikomputera Mera-400", [[Andrzej Bobcow]], [[Zbigniew Czerniak]], [[Marek Nikodemski]], IOPG, Gdańsk 1985.  


{{source|title=Symulator EMC ODRA-1204 dla minikomputera MERA-400 w systemie operacyjnym CROOK-4 (wersja-1/A)|author=Janusz Gocałek, Jacek Klauziński, Ryszard Zenker|date=Poznań 1985}}
{{source|title=Symulator EMC ODRA-1204 dla minikomputera MERA-400 w systemie operacyjnym CROOK-4 (wersja-1/A)|author=[[Janusz Gocałek]], [[Jacek Klauziński]], [[Ryszard Zenker]]|date=Poznań 1985}}

Menu nawigacyjne