<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl">
	<id>https://mera400.pl/index.php?action=history&amp;feed=atom&amp;title=CSL-CROOK_-_Uruchamianie_program%C3%B3w_binarnych</id>
	<title>CSL-CROOK - Uruchamianie programów binarnych - Historia wersji</title>
	<link rel="self" type="application/atom+xml" href="https://mera400.pl/index.php?action=history&amp;feed=atom&amp;title=CSL-CROOK_-_Uruchamianie_program%C3%B3w_binarnych"/>
	<link rel="alternate" type="text/html" href="https://mera400.pl/index.php?title=CSL-CROOK_-_Uruchamianie_program%C3%B3w_binarnych&amp;action=history"/>
	<updated>2026-05-01T11:08:14Z</updated>
	<subtitle>Historia wersji tej strony wiki</subtitle>
	<generator>MediaWiki 1.41.0</generator>
	<entry>
		<id>https://mera400.pl/index.php?title=CSL-CROOK_-_Uruchamianie_program%C3%B3w_binarnych&amp;diff=1073&amp;oldid=prev</id>
		<title>Amo: Utworzono nową stronę &quot;Gotowe programy binarne są uruchamiane przez podanie nazwy. Jeżeli program współpracuje ze zbiorami danych lub wyników, to należy wykonać następujące operacje: ...&quot;</title>
		<link rel="alternate" type="text/html" href="https://mera400.pl/index.php?title=CSL-CROOK_-_Uruchamianie_program%C3%B3w_binarnych&amp;diff=1073&amp;oldid=prev"/>
		<updated>2013-08-31T14:29:01Z</updated>

		<summary type="html">&lt;p&gt;Utworzono nową stronę &amp;quot;Gotowe programy binarne są uruchamiane przez podanie nazwy. Jeżeli program współpracuje ze zbiorami danych lub wyników, to należy wykonać następujące operacje: ...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nowa strona&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Gotowe programy binarne są uruchamiane przez podanie nazwy. Jeżeli program współpracuje ze zbiorami danych lub wyników, to należy wykonać następujące operacje:&lt;br /&gt;
&lt;br /&gt;
* zbiory przeznaczone na wyniki winny być przed uruchomieniem programu otwarte zleceniem Języka Operatora &amp;#039;&amp;#039;&amp;#039;CRF&amp;#039;&amp;#039;&amp;#039;;&lt;br /&gt;
* zbiory wyników i danych współpracujących z programem muszą być następnie przywiązane zleceniem Języka Operatora &amp;#039;&amp;#039;&amp;#039;ASS&amp;#039;&amp;#039;&amp;#039; do odpowiednich (użytych w programie) numerów strumieni;&lt;br /&gt;
* numery strumieni użyte w zleceniu &amp;#039;&amp;#039;&amp;#039;ASS&amp;#039;&amp;#039;&amp;#039; muszą odpowiadać  odpowiednim numerom strumieni użytych w instrukcjach &amp;#039;&amp;#039;&amp;#039;READ&amp;#039;&amp;#039;&amp;#039; i &amp;#039;&amp;#039;&amp;#039;WRITE&amp;#039;&amp;#039;&amp;#039;;&lt;br /&gt;
&lt;br /&gt;
Jeżeli program współpracuje z monitorem (tzn część wyników, komunikaty są drukowane na monitorze) to istnieje możliwość zapisania ich do zbioru. Tworzony jest wtedy tzw zbiór monitorowania. Służy do tego zlecenie Języka Operatora &amp;#039;&amp;#039;&amp;#039;OUT&amp;#039;&amp;#039;&amp;#039;, użyte bezpośrednio przed uruchomieniem programu.&lt;br /&gt;
&lt;br /&gt;
Programy binarne w języku CSL mogą mieć  maksymalną wielkość do 64K słów. Natomiast największa deklarowana tablica nie może być większa jak 32K. Programy kończą się komunikatem STOP lub PAUSE. Liczba wydrukowana wraz z tymi instrukcjami określa numer tych instrukcji w programie. Jeżeli instrukcja &amp;#039;&amp;#039;&amp;#039;STOP&amp;#039;&amp;#039;&amp;#039; w programie występuje bez numeru to wydrukowana liczba jest równa zero (0). Wtedy usuwany jest obraz pamięci programu (zbiór specjalny). Jeżeli liczba występuje i jest mniejsza lub równa 100 to program kończy się komunikatem STOP oraz podany jest numer stopu (liczba). Pozostaje obraz programu (zbiór specjalny) a R4 zawiera numer stopu programu. Taki stan programu daje możliwość  testowania sposobu zakończenia programu w makrozleceniach. Użyta w programie instrukcja &amp;#039;&amp;#039;&amp;#039;STOP&amp;#039;&amp;#039;&amp;#039; z numerem za instrukcją, większym od liczby 100, spowoduje zakończenie programu bez komunikatu (wydruku instrukcji STOP 101) i przejście do Języka Operatora OSL. Użycie instrukcji &amp;#039;&amp;#039;&amp;#039;STOP&amp;#039;&amp;#039;&amp;#039; z numerem większym od 100 najlepiej stosować dla programów, które będą się wykonywały w tle. (będą  uruchomione jako następne zadanie z monitora użytkownika). Jeżeli program zatrzyma się instrukcją PAUSE (jest to sygnalizowane komunikatem &amp;lt;tt&amp;gt;PAUSE &amp;lt;numer&amp;gt;&amp;lt;/tt&amp;gt;) to zawsze pozostaje zbiór specjalny i istnieje możliwość ponownego uruchomienia (od miejsca zatrzymania) programu zleceniem OSL-a RS &amp;lt;nazwa programu&amp;gt;. Po zakończeniu programu instrukcją STOP lub chwilowym zatrzymaniu instrukcją PAUSE, rejestr maszyny R4 zawiera numer instrukcji &amp;#039;&amp;#039;&amp;#039;STOP&amp;#039;&amp;#039;&amp;#039; lub &amp;#039;&amp;#039;&amp;#039;PAUSE&amp;#039;&amp;#039;&amp;#039;. Natomiast gdy program kończy się błędem, to numer błędu znajduje się również w R4. Taki stan rejestru R4 po zakończeniu każdego programu fortranowskiego umożliwia badanie stanu zakończenia programów przy budowaniu makrozleceń Języka Operatora.&lt;br /&gt;
&lt;br /&gt;
Przykłady:&lt;br /&gt;
&lt;br /&gt;
 CRF, WYNIKI,100&lt;br /&gt;
 CRF, WYN2&lt;br /&gt;
 ASS,1, DANE1&lt;br /&gt;
 ASS,2, DANE2&lt;br /&gt;
 ASS,5, WYNIKI&lt;br /&gt;
 ASS,6, WYN2&lt;br /&gt;
 OUT, FILMON&lt;br /&gt;
 BINPROG&lt;br /&gt;
&lt;br /&gt;
Przykład makroinstrukcji, która uruchamia program w języku CSL. Program ten kończy swoją pracę instrukcjami STOP 1, STOP 2, STOP 3. Badany jest rejestr R4 i w zależności jaki numer STOPU pojawi się w R4 będzie wywoływany określony przez parametry inny program.&lt;br /&gt;
&lt;br /&gt;
Przykład:&lt;br /&gt;
&lt;br /&gt;
 RUNBIN,,,,,,,&lt;br /&gt;
 ASS,1,$A&lt;br /&gt;
 ASS,2,$B&lt;br /&gt;
 $D&lt;br /&gt;
 ASS,1,$B&lt;br /&gt;
 ASS,2,$C&lt;br /&gt;
 WHEN VAL=1 TRANSF ETA&lt;br /&gt;
 WHEN VAL=2 TRANSF ETB&lt;br /&gt;
 WHEN VAL=3 TRANSF ETC&lt;br /&gt;
 END 0&lt;br /&gt;
 ETA:$E&lt;br /&gt;
 TRANSF ETF&lt;br /&gt;
 ETB:$F&lt;br /&gt;
 TRANSF ETF&lt;br /&gt;
 ETC:$G&lt;br /&gt;
 ETF: LIST,$C, LP2&lt;br /&gt;
 END 0&lt;br /&gt;
 $$END&lt;br /&gt;
&lt;br /&gt;
Standardowo programy binarne nie sygnalizują  błędu jeżeli wystąpi podmiar. Do obliczeń przyjęta jest wtedy wartość zero. Istnieje możliwość generowania błędu jeżeli wystąpi podmiar. Należy wtedy do komórki 3 programu binarnego wpisać  programem DEBU następującą wartość -1 (standardowo jest wartość 0). Od tego momentu program będzie sygnalizował błąd podmiaru ES 05. Zmianę tego typu można dokonać, wywołując makrozlecenie UNDERF, które automatycznie zmienia zawartość tej komórki. Makrozlecenie UNDERF posiada jeden parametr: Tytuł zbioru.&lt;br /&gt;
&lt;br /&gt;
{{source|title=Translator języka CSL-CROOK dla minikomputera MERA-400 w systemie operacyjnym CROOK-4, Instrukcja Programisty (wersja-17/2)|author=Janusz Gocałek, Jacek Klauziński|date=Poznań, 1985}}&lt;/div&gt;</summary>
		<author><name>Amo</name></author>
	</entry>
</feed>