DE ONBEKEND-KODE IN EEN DATAFIJLE · rj Nota's van he t Instituu t zijn in princip e interne...
Transcript of DE ONBEKEND-KODE IN EEN DATAFIJLE · rj Nota's van he t Instituu t zijn in princip e interne...
-
t voor Cultuurtechniek en Waterhuishouding Wageningen
ASPECTEN VAN INFORMATIEVERWERKING
BIBLIOTHEEK DE HAAFF Droevendaalsesteeg 3a
Postbus 241 6700 AE Wageningen
$W&mm^^-®^m
DE ONBEKEND-KODE IN EEN DATAFIJLE
Mevr. G. van den Berg-Buitenhuis
rj
Nota's van het Instituut zijn in principe interne communicatie-middelen, dus geen officiële publikaties. Hun inhoud varieert sterk en kan zowel betrekking hebben op een
«• eenvoudige weergave van cijferreeksen, als op een concluderende ; discussie van onderzoeksresultaten. In de meeste gevallen zullen
de conclusies echter van voorlopige aard zijn omdat het onder-zoek nog niet is afgesloten. Bepaalde nota's komen niet voor verspreiding buiten het Instituut in aanmerking
CENTRALE LANDBOUWCATALOGUS
0000 0941 0438
Fß léÓQ
CORE Metadata, citation and similar papers at core.ac.uk
Provided by Wageningen University & Research Publications
https://core.ac.uk/display/29385108?utm_source=pdf&utm_medium=banner&utm_campaign=pdf-decoration-v1
-
A S P E C T E N V A N I N F O R M A T I E V E R W E R K I N G
Deel Titel Auteur Nota Datum
1 Computerverwerking van lange reeksen getallen
2 Optimaliseren van para-meters: Het gereedmaken van een functie voor toepassing in NLV
3 Registratieverwerking voor automatische pF-bepalingen
J.B.H.M. van Gils
Ph.Th. Stol
J.B.H.M. van Gils
935 nov. 1976
943 febr.1977
949 febr.1977
4 Het systematisch bepalen Ph.Th. Stol van de afgeleiden van een functie ten behoeve van hun programmering
5 Het samenstellen van een J.B.H.M. van Gils input tape voor een elektrisch model
6 Over het samenstellen van Ph.Th. Stol een computerprogramma voor het optimaliseren van parameters
948 febr.1977
951 apr. 1977
7 De onbekend-kode in een mevr.G.van den Berg- 989 juli 1977 datafile Buitenhuis
8 Enkele methoden voor het op eenvoudige en over-zichtelijke wijze syste-matisch aanpassen respec-tievelijk veranderen van functies en parameterwaar-den in computerprogramma's
Ph.Th. Stol 984 aug. 1977
-
De nota's handelende over Aspecten van Informatieverwerking bevatten inlichtingen over de ontwikkeling van de informatieverwerking binnen het Instituut. Naast meer concluderende en toelichtende beschouwingen zal aandacht worden besteed aan het gebruik van programma's en pro-grammapakketten en zullen zakelijke inlichtingen over praktijkerva-ring met en toepassing van de informatieverwerking worden gegeven
-
I N H O U D
Biz.
INLEIDING 1
DATAFILE 1
DE ONBEKEND-KODE 2
HET TOEPASSEN VAN DE ONBEKEND-KODE VOORHEEN EN NU 2
HET PROGRAMMA VACANT 4
NAMENLIJST FORTRAN-PROGRAMMA VACANT 4
HET GEBRUIK VAN PROGRAMMA VACANT 5
VOORBEELD 6
LITERATUUR 7
WOORDENLIJST 9
BIJLAGE 1 Voorbeeld van een niet schoongemaakte datafile 11
BIJLAGE 2 Voorbeeld van een computerjob met programma VACANT 12
BIJLAGE 3 Voorbeelden van datafiles bewerkt met programma
VACANT 15
BIJLAGE 4 Volledige tekst van het programma VACANT 19
-
INLEIDING
Voor de computerverwerking van lange reeksen getallen wordt voor-
namelijk gebruik gemaakt van de PDP-11 van IWIS-TNO. Hierbij kunnen
de benodigde bewerkingen met behulp van een daartoe ontwikkeld pro-
grammapakket uitgevoerd worden als standaardmethode (VAN GILS, 1976).
De reeksen getallen worden daarbij opgeslagen in een standaardvorm
van opslag op schijf. Dit type opslag wordt een 'datafile' genoemd.
Getallen in de reeksen die niet tijdens de bewerking mogen wor-
den gebruikt of die onbekend zijn, wordt een getalswaarde gegeven
die gehanteerd wordt als onbekend-kode.
Met een nieuwe procedure toegevoegd aan de standaardmethode kan
de gebruiker op een gemakkelijke manier naar eigen inzicht de onbe-
kend-kode in een datafile zetten. Hiervoor is nu programma VACANT
beschikbaar.
DATAFILE
De standaardvorm van opslag wordt aangeduid als 'datafile'. Het
is een direct access file in binaire kode.met alleen integer getal-
len. Een integer getal ligt tussen - 32767 en + 32767 en heeft geen
komma.
Met een kolom in de datafile wordt de reeks getallen met hetzelf-
de woordnummer in ieder record aangeduid. In een kolom van de data-
file wordt de getallenreeks van een variabele opgeslagen, bijvoor-
beeld de metingen van een enkele waterstandsbuis die alle hetzelfde
woordnummer krijgen. Ieder record bevat dan in het betreffende
woord de meting uitgevoerd op een bepaalde datum.
-
DE ONBEKEND-KODE
Als onbekend-kode wordt bij iedere file een getalswaarde gekozen.
Meestal wordt als standaardwaarde voor de onbekend-kode 9999 gebruikt.
In sommige programma's kan men zelf voor de onbekend-kode een
ander integer getal kiezen. (Zie toelichting bij de FILEKAART op de
eerste pagina van bijlage 4).
Voor een aantal oude programma's - MOVE, ONEVAR, CORREG, REGIST,
ONEREC - is het gebruik van de standaardwaarde nog verplicht.
Getallen welke gelezen worden uit registraties in ASCII-kode
(dus b.v. ponskaart en tape) maar waarvan alle karakters blank zijn
(het karakter SPACE) of waarvan de combinatie karakters zodanig is
dat geen getal door de computer gevormd kan worden, krijgen automa-
tisch de onbekend-kode. Berekeningen met onbekende getallen geven
weer de onbekend-kode als uitkorosr..
In een tabel van een datafile wordt de onbekend-kode geprint als
een punt (zie voorbeelden in bijlage 3).
HET TOEPASSEN VAN DE ONBEKEND-KODE VOORHEEN EN NU
Voorheen bestond er al de mogelijkheid om de onbekend-kode in
een datafile te zetten, maar alleen als onderdeel van andere proce-
dures. Voorbeelden hiervan zijn onder andere de programma's: INPUT
(invoer gegevens op datafile) en TRANS (transformeren onder voorwaar-
den) .
Nu kan de gebruiker naar eigen inzicht, onafhankelijk van andere
procedures, getalswaarden in een datafile vervangen door de onbekend-
-kode. De oorspronkelijke getalswaarden gaan hiermee verloren.
Voor het toepassen van de onbekend-kode is thans een programma
beschikbaar, dat makkelijk hanteerbaar is. De nieuwe mogelijkheid
is geen vervanging van de bestaande procedures, doch kan daarnaast
op alle bestaande datafiles worden toegepast.
Er zijn vier soorten bewerkingen mogelijk om de onbekend-kode in
een datafile te zetten:
-
B e w e r k i n g 1
Een gehele datafile onbekend maken. Dit wordt gebruikt, voordat
de waarnemingsuitkomsten verwerkt worden. Men gebruikt dit onder an-
dere om een nieuw aangemaakte datafile schoon te maken. Een nieuw
aangemaakte,' niet schoongemaakte datafile bevat onvoorspelbare ge-
talswaarden, welke niet mogen worden gebruikt. Bijlage 1 is een
voorbeeld van een niet schoongemaakte datafile. Zou het 2e woord in
het Ie record niet door de nieuwe gegevens worden overschreven dan
wordt de dan onjuiste waarde 22000 in verdere bewerkingen gebruikt.
B e w e r k i n g 2
Per woordnummer alle records onbekend maken. Dit wordt gebruikt,
als er wel getallen (b.v. waarnemingsuitkomsten) in de datafile
staan, maar in een kolom van een datafile (b.v. alle waarnemingen
van een waarnemingspunt) alle bestaande getallen niet meer gebruikt
mogen worden in de volgende bewerking van de reeksen getallen.
B e w e r k i n g 3
Per record alle woordnummers onbekend maken. Dit wordt gebruikt
als reeds getallen in de datafile zijn ingevuld (b.v. waarnemings-
uitkomsten), maar alle bestaande getallen in een record (b.v. alle
waarnemingen van een datum) niet meer gebruikt mogen worden in de
volgende bewerking van de reeksen getallen.
B e w e r k i n g 4
Een combinatie van 'opgegeven records en opgegeven woordnummers
onbekend maken. Dit wordt gebruikt als er al wel getallen (b.v. waar-
nemingsuitkomsten) in de datafile staan, maar in verschillende woor-
den (b.v. voor een aantal waarnemingspunten) van verschillende
records(b.v. voor een aantal data van waarneming) de bestaande ge-
talswaarden niet meer gebruikt mogen worden, in de volgende bewer-
king van de reeksen getallen.
-
Bijlage 3 geeft van iedere bewerkingssoort voorbeelden welke het
resultaat laten zien van de toegepaste bewerking. Deze bijlage zal
later nog besproken worden.
HET PROGRAMMA VACANT
De bewerking van de nieuwe procedure gaat met behulp van het
hiervoor ontwikkelde standaardprogramma VACANT.
De eerste versie van programma VACANT wordt gegeven in Bijlage 4.
Zonodig wordt dit programma aangepast aan nieuwe wensen uit de prak-
tijk. Volledige informatie over de laatst verschenen versie is ver-
krijgbaar bij de afdeling Wiskunde.
NAMENLIJST FORTRAN-PROGRAMMA VACANT
De betekenis van een aantal namen van variabelen in het FORTRAN-
-programma, is samengevoegd in deze lijst. Deze lijst is samengesteld,
opdat men het FORTRAN-programma duidelijk kan volgen.
A reeks waarin de karakters van een uit te schrijven regel
verzameld worden
B reeks waarin de karakters van een record nummer of woord-
nummer verzameld worden
BLANK het karakter SPACE
DAT datum
FILE naam van de datafile
IGOTO reeks met getallen die de route in het programma aanduidt
IREC * reeks met nummers van de records waarvan alle woorden onbe-
kend worden
KREC reeks met nummers van de records waarvan opgegeven woorden
onbekend worden
KWORD reeks met nummers van de woorden van opgegeven records
die onbekend worden _,
L de reeks getallen gelezen in en geschreven naar een record
van de datafile
-
LREC recordnummer gebruikt bij het lezen en bij het schrijven
van een record van de datafile
MX een teladres om B op de goede plaats in A weg te zetten
NEWNOT een niet-standaardwaarde voor de onbekend-kode
NOT de gebruikte/waarde voor de onbekend-kode
NREC aantal records van de datafile
NWORD aantal woorden per record van de datafile
UNIT unitnummer voor de datafile
UNITI unitnummer voor input (standaard: 8)
UNITO unitnummer voor output(standaard: 5)
WORD reeks met nummers van woorden die in alle records onbekend
worden
HET GEBRUIK VAN PROGRAMMA VACANT
Het ICW heeft verschillende schijven in gebruik waaróp data-
files zijn opgeslagen. Om die reden staan op al die schijven ook de
ICW-standaardprogramma's. Zo staat programma VACANT nu op de schij-
ven ICW 01, ICW 02, ICW 03, ICW 06, ICW 07, ICW 08 en ICW 10.
Het programma staat opgeslagen onder de filenaam:
DK1: VACANT.LDA
De opgedane ervaringen bij het gebruik van standaardprogramma's
worden mettertijd in de programma's verwerkt. Daarom worden de pro-
gramma's keer op keer aangepast. Alleen de laatst verschenen versie
van een standaardprogramma wordt bewaard en op alle schijven opge-
slagen.
Met de aanpassing van het programma kan ook de gebruiksinstruc-
tie veranderen. Daarom is de instructie steeds aan het programma
toegevoegd en vormt daarmee een geheel. Voor informatie over de
standaardprogramma's kan men altijd op de afdeling Wiskunde terecht.
In bijlage 2 is een volledig voorbeeld gegeven van een computer-
job met gebruik van programma VACANT. Het bestaat uit een lijst van
de kaartinvoer, een lijst van de output afgedrukt op de regeldrukker
door programma VACANT en de dayfile van de computerjob. Het resul-
-
taat verkregen in de datafile op schijf van deze computerjob is
weergegeven in bijlage 3.
VOORBEELD
In bijlagen 2 en 3 is van de vier genoemde bewerkingen een voor-
beeld gegeven. Bijlage 2 bevat de complete computerjob met stuur-
kaarten, invoergegevens, output van programma VACANT en de dayfile.
Bijlage 3 bevat een voorbeeld van een datafile en de resultaten
verkregen na toepassing van de computerjob in bijlage 2. Bijlage 3
is de output van programma TABEL2.
De assignkaarten (b.v. $AS DK1: VDBERG,1) worden gebruikt om de
desbetreffende file op te roepen, in dit geval de datafile VDBERG.
#RU DK1: VACANT.LDA wordt opgegeven, om programma VACANT uit te voe-
ren. Het programma VACANT leest uit de kaartinvoer altijd eerst een
kaart waarmee het programma bestuurd wordt en daarom eveneens stuur-
kaart genoemd wordt. In dit voorbeeld zijn dat de kaarten met: +
(Er worden ook wel andere tekens gebruikt in de stuurkaart, zie
bijlage 4).
Daarna wordt de filekaart ingevoerd. Dit is een kaart, waarin
de naam van de datafile staat, en het unitnummer horend bij de des-
betreffende file (het unitnummer moet overeenkomen met het unitnum-
mer van de assignkaart), en de grootte van de file (aantal records
en aantal woorden). In het voorbeeld van bijlage 2 is dit voor de
eerste bewerking: datafile VDBERG, unitnummer 1, aantal records 10,
aantal woorden per record 21. Hierna wordt de titelkaart gelezen.
Men kan zelf opgeven welke titel men boven de bewerking wil hebben.
In de titelkaart voert men in de eerste kolom een 1 in, waardoor
iedere bewerking op een nieuwe bladzijde begint. De verdere invoer
is per bewerking verschillend. Voor bewerking 1 worden verder geen
kaarten ingevoerd. Voor bewerking 2 worden woordnummers opgegeven,
dat wil zeggen (zie voorbeeld bijlage 2) dat van de woordnummers:
4, 8, 10, 14, 18 en 21 de getalswaarden van alle recordnummers on-
bekend worden gemaakt (zie blad 2 van bijlage 3). Woordnummer is
niet hetzelfde als meetpuntnummer. In deze voorbeelden is:
-
jaar = woord 1, maand = woord 2, dag = woord 3 en meetpunt 1 = woord
4 enz. Voor bewerking 3 worden recordnummers opgegeven, dat wil
zeggen dat van de recordnummers: 1, 3, 5, 7 en 9 de getalswaarden
van alle woordnummers onbekend worden gemaakt (zie blad 3 van bijla-
ge 3). Voor bewerking 4 worden eerst recordnummers opgegeven, en dan
woordnummers, dat wil zeggen dat de getalswaarden van de recordnum-
mers: 1, 4, 9 en 10 met de woordnummers 1 tot en met 21 onbekend
worden gemaakt (zie blad 4 van bijlage 3).
#E0D gebruikt men om de gegeven kaarten af te sluiten. 1350 00000$!
in de dayfile betekent dat het programma gestopt is, op het moment
dat in het programma een volgende stuurkaart wordt gevraagd.
Dat het laatste cijfer van deze stopkode een 0 is betekent dat
de betreffende bewerkingen volledig zijn uitgevoerd.
LITERATUUR
DIGITAL EQUIPMENT CORPORATION BATCH - PDP-11. Fortran Language
Reference Manual.
GILS, J.B.H.M. VAN, 1976. Computerverwerking van lange reeksen
getallen. Aspecten van Informatieverwerking, dl 1. ICW-nota
935.
-
WOORDENLIJST
(1615)
ASCII
Bewerking
Binair
Computerjob
Datafile
Dayfile
Direct access
End of file
End of record
File
Filekaart
Filenaam
INPUT
Integer
Kode
Onbekend-kode
Output
PDP-11
Record
de wijze waarmee een ponskaart ingelezen wordt
(format specification) bijvoorbeeld 1615 bete-
kent 16 integer getallen met 5 plaatsen (kolom-
men) per getal
American Standard Code of Information Interchange
in deze nota de wijze waarop de onbekend-kode
wordt geschreven in een datafile
volgens het tweetallig stelsel
een verzameling computerbewerkingen welke als een
geheel wordt aangeboden en verwerkt
ICW-standaardvorm van opslag; een direct access
file in binaire kode
overzicht van een verwerkte computerjob
per record fysisch toegankelijk
sluitteken aan het einde van een file
sluitteken aan het einde van een record
een hoeveelheid informatie, bijvoorbeeld een
reeks getallen, afgesloten met een 'end of file'
welke met een filenaam is geïdentificeerd
ponskaart waarop vermeld staan de specificaties
van de betreffende files
is de naam van een file, waarmee men de betref-
fende file kan oproepen
ICW-standaardprogramma - inputprogramma voor de
datafile -
een getal zonder komma passend in een woord dus
liggend tussen - 32767 en + 32767
schrijfwijze. Binaire-kode, onbekend kode
een getal - standaard 9999 - dat is ingevuld wan-
neer een getal niet bekend is of niet gebruikt mag worden
uitvoer van informatie
computer van IWIS-TNO in Wageningen
een hoeveelheid informatie afgesloten met een
'end of record' welke als eenheid gelezen of
beschreven wordt
-
Reçordkaart
Recordnummer
Schijf
Schoonmaken
Space
Stopkode
Stuurkaart
Titelkaart
TRANS
Unitnummer
VACANT
Woord
Woordnummer
Woordnummerkaar t
$ÈOD
ponskaart met recordnummers van de datafile
het volgnummer van een record in de datafile
disk, fysische eenheid van informatie opslag,
welke per onderdeel gelezen of beschreven kan
worden
het uitwissen van getalswaarden die niet gebruikt
mogen worden, en vervangen worden door de onbe-
kend -kod e
spatie
kode in de dayfile die aangeeft op welk punt in
het programma de bewerking is gestopt
ponskaart die aangeeft welke bewerking men wil
uitvoeren
kaart met de titel, die boven ieder blad wordt
afgedrukt
ICW-standaardprogramma - transformeren onder
voorwaarden -
getal tussen 1 en 8 in het fortranprogramma,
waarmee een randapparaat van de computers of
een file wordt aangeduid
ICW-standaardprogramma - een onbekend-kode in
een datafile zetten -
eenheid van computeropslag
het volgnummer van het woord in een record van
de datafile
ponskaart met woordnummers van de datafile
end of data
10
-
•H m (0 4J ta T3
Bijlage 1
• a» » s s s (
s s s s s m s s s s s s
»V K l s a : _» . « 3 • •
s s s s s a s <
s o s s s s s s s s
» C B S S S C B S S « « » i
i s s s s s s i
s s s s s s s s a s • •»
S < 9 « S ( B » B < B ( B S « I
ctf
I b0 C o o
•C Ü m
I S S S S S S S S S « I
S B S S S S S S S S
» s s s s s s s s s « i
4-1 0) S B B B S t S S S a O) <
c S S C B S S S S S S S S I
0) a)
, û l-l o o >
M
ce »• «i io >
M M .
11
-
Bijlage 2
Voorbeeld van een computerjob met programma VACANT
VOORSEELO VAN IN TE VOEREN P0N5KAARTEN OH EEN CONPUTERJOB TE LATEN DRAAIEN
............MEN BEGINT EEN COMPUTgRJOB ALTIJD EERST NET S T U U R K A A R T E N — — — —
SJDB 7î?îîC3GBBtT?T,T?tJ IMJ IDENTI SRU CHECKO «ICH 10 SKI SAS OKllVDBERG,! SAS 0KI|BERG1|2 SAS OKHBERG2,3 SAS 0KltB£RG3,4 SRU OK1IVACANT.LOA ................HIERNA V0L6T OE INVOER VAN GEGEVENS OP PONSKAARTEN—————« ........................TE GEBRUIKEN BIJ PROGRAMMA V A C A N T - « » — — - — — » ••• VDBERGI 1« 21 1 OUTPUT VAN PROGRAMMA VACANT VOOR DATAFILE VOBERG, •• • BERG1 8 10 81 I OUTPUT VAN PROGRAMMA VACANT VOOR OATAPILE BERG1,
4 S 10 14 IB et SEOD •• • BERGS 9 IB 21 t OUTPUT VAN PROGRAMMA VACANT VOOR DATAFILE BERG2.
1 9 9 7 9 SEOD •• • BERGS 4 10 21 1 OUTPUT VAN PROGRAMMA VACANT VOOR OATAPILE BERG3,
1 4 9 10 lEOD
1 2 3 4 0 6 7 8 9 ld 11 12 13 14 19 IS 17 IB 19 20 21 1 2 3
«EOO SEOO
sri " " """"" " """"" " """"" " " • " * " " " " " " " " " " — " — " — * » * " " " • *
12
-
Bijlage 2 vervolg
t 3
K.
19 ac
o s
M 13 BC
0% O ac
ce W
o o
a CJ h l ac
3 z a
ia oc al a a» û kl
•« ui o o CE ac Ui o co e
ca 19 IO UI 19 O
ac ac kt O CB O
S ui
o cc o — o ie oi a o » z
kt
ac e o x o o
o 9»
u >
ki a> z o
cc (9 O M S CC (9 M O. cc
cc 19 O CHI ac o et cc
(9 I O » ac «9 a . cc
l d CC UI
•»«er x < *
S "*• e o o 3 O
O
13
-
Bijlage 2 vervolg
DISK XN DKtl •••
DK1I FREE BLKSl 1988
•JOB 09490C3GBBII00, OATE»-0«-JUU»77 TIMEI-I4I03I4S SRU XOENTX
1390 00000« SRU CHECKO
•KI
•A9 OKtlVOBERG.l
SAS DKI|BERG1,2
SAS 0KH8ERG2,3
SAS DKliB£RG3,4 SRU OKI 1VACANT,CDA
SEOO
SEOO
SEOO
SEOO
1390 000000
SEOO
tn TIMEI-J4I04I27
XCM 10 • *»
100)
14
-
Bijlage 3
m w m a
>
u O
a AS
Xi
CO
eu
cd 4J cd
• o
e ca >
ö eu
• o I - I o
»- 19 , Z « 3 O O. » -w W O X z
n
« M M
CM S Ot •» A
« e i « * M f l l M M »
N m A «t M C|
M A
S M t e e » n « > K » o r n i K a c n n c i o « « I K » « S O N - «
« t M M M M K M
«s m K. a» n • • » œ e » A S M M » » C M » M A S N « M • A A M
M M M O I M «
A o t N v n c s v r e « N M a i n n - o i K « » K c w a i - i n r v s «
A A A A M S A A »et B S t « S t « C V «I A * . t l O N t « > « n n M
A n S A V S A K A A B S S N T r l K C I »
s n s v n n n o i K « s e v n s v n n i o o A A M ^ S M K A A M
M MOI
A « O i O l S V O J M »
A A A A A N » A A « n o c e « s A v i O M ^ « • A M A M A O . , « »
A A A A S M 0 A K . A
A A A A 9 S A A A A » « • « « s t A « A
A A A A » A A A A A A A A S A O A V A A n n n n « N A « a e i
A A A A M A A A A * • N M d x A O K a
M A A S S A M K . • • • • s c c n n x K A x t B K v n n a s
« A W A A A A M M A K . < * I O K A A M
A A A A 9 S A 0 V A « S N C N A S « « A K S x O i n i B O l K N
O I M M M M M
r>'V m A A t O K B A M M M
A A A A S S A A A A M M A ^ M ^ B M A A • N « C S O I C N C - <
O K a » S ' N i o t n M M o n n
« • D V S K K K N K
K » k K K K fv is. K K^ r>. Z N X N Z s z A A A A A O I A A A A X A X A < •<
I 3
M A
M A A M n M M
m « A
« « O l
A n t
A M K ,
A M » V
«
-
Bijlage 3 vervolg
«0
or o
»- e Z 4 3 O
UI u i e
S N t l O l x A A K I
— — p*. 10 «o & 01 r^ — < M — — — — *« —
• » K a n • • ! M» «t i » » — to — o> e i « < «a s 01 * — • s a» •
—•»«—»•«• — i
CM ot tv «r #» CM « ot • • o i » » —
E S « M t r i K « S « • * e « n a « N r t x > i
s n a t n o N N K «
— • s D s a t n s n oi « cuot aa « CM — »
s a a s a M n c a « t o e i c B a « r e > o > « » — « « • • • a x a N t i »
s s s s c n e o o t i s . < D fe.e°. e i « K O > e i « * > —
s c s s s c s i s a c t i N a K e a c u > « n «
s s s i n o s s c s s
n n n n t N i t t a a — Cd — —
— es « . s
i»». »* « K > s M
s a s s s s s a v a o»cscMFv*r 4 M n i B a K N
CM — — — — —
« - » » t o e » » » s o t t o « n o K a a o t » w
s s s a s o n s « « n K N s n a o s » « • • a o n K a a H M f «
S S S S S S B S B S • « « • s a a K V M
O N a a a - < N n « n ot otCU o t to
O a B V B K K K K K
K K K N K K N K N K r ^ ^ t v r v K K i ^ f v ^ i s o t o k a t o t o t a t o i o i o i o t
a m - «
t
es » «E m.
«o to (B
CU •> « o s « o> e> — » — ot CM « — e s « « - ca es ot —
— — — et — ca
S M M « A B B « » S K N N c t n x a K * « K « « a x B K 9 B
e a n s i o v a j o t » « . « » « S S C \ « I I ) K C S ' •4 W A a C M A «•<
s n s « i o i n N M N i C E S « n a v n n r i ' Ot « — «I s « « K B a <
— » « « o a o M n B n ot « M e > o « « i « n
B S S S B O S a K B K i ( M « K » « M n - < o» is — CM 10 «r — ca ea . X K Z B Z K 4 K 4 OtZCOt «X — « • <
16
-
Bijlage 3 vervolg
M 19 OC
•
3t
v n K O i c n n i D a « — — f * . » O S O I * > — «
M «•• — — — K —
B s> K » a t A • « « « • c s - m - o>. cv « « * » î « « - < C S O I M
— — M O I — «
* . C M O I « » I O — O : N . > » »
s «• 9 a - « » s • * » e t
— CMIO » •»
a i 2 > - » v e e < - * r ^ « a i —
- • • « « a « * » « » a i t N a a « N « n
eu « I D a» — * * » - *
« C M a t — a i — e * . - « «
S S S C O I C S K «
a i s — C M » « — 9 0 9
— C M O « B 9 « a » a t C M O i a i * > . 0 a i C M < - t i o «
S 9 9 9 m a i 9 9 9 9 • • • • • « « « s a n n n n ^ s n « s a
» M « a « n o i N a
— x o B ro CM — K s
— o» o» —
m c a a s x I t » . • « « N O S »
s n a t m
s o • > — m - » — —
s Ol
s
s
r».
• en
s
».
s s IO
w «
a t i u • o
o
• • o
9 Z — t u
oc (9
OC a> tu
o J k l
*-%a
3 O
a. tu
9 S 9 9 9 9 S 9 9 9 t n c t « « c « t c S N t s s a v s o M
« K s a s o N n v i i c u e » c a e i n
CM V _ ! — • r^ i a « t -
— t - t u tu X 19
-» S s z m u — iu
« B e O D K K K N K « K I U S U l
K . K » K . K . i v t v K . K» K . r v z r < . » c * . : K K K K K N N K K K t - * » K « K < a t a t a t a t a t a t a t a t a t a t x o t x o i -
o
o
o o >
Ol in «•4
e i
in s s • 4
Ol CM CM
S S' a i CM
• IO a> m w*
• a»
» » •• • »
at
• s
* «
• — n s "*
• •
• s
s
• s s N ••
• «> in ** »».
• CM m
— • • *
S
• 9
« at
• a t
« *
• o
«« • 4 •>
• 0
• e i
«
at w %
in s 9
"" •
e i
*
« m K. K.
t>
• «« » • «
« s at CM
»
«
m
e
•>
e
•>
K»
» m « B » o » r ^ « a t s o i i n «3 — B n o iO • »
• n • •« • » »oi » o a> *> « n —
« l o m
• » ie » a «i>> »m • > • > • » oi « oi i o n 0
» s « s » C M • • > • » CM s s « — « • < H K D
• s « S • » « o t » o « •» Ol •» — S O l « s «o
CM S 9 CM - • CM
— a t t o «
CM » 9 m a t « 9 CM ^ a i — « » t a t
• 9 » e s »C» » 9 « 9 9 9 • > • > •O « 0 >» 9 0 9 « n N » « n a i
• 9 » 9 » 9 » 9 • • 9 9 « « IO 0 " • CM « r » CM ai n rv n et — • «
• a t * 9 ' 9 « r» . « 9 9 a i a • > 9 B CM fs. S CM 9 v K . i n o 9 «> » a i — a t
• 9 > 9 « 9 « 9 • - » 9 — » in s - v « 0 - • • « - »
• S « S » 0 « 0 > 0 0 9 » » 9 9 O» «» 9 9 9 S> CM — O l CM CM 9 CM — — CM
• 9 » S » 9 » S « 9 9 9 OUI m "» B « 0 IO » 0 o n K a a t • « a t o
X
o • 9 " 0 » 0 * 9 »CM 9 9 n z n
r^ s 0 CE CM 0 s w o i i o 0 — - « 0 i o i e
« — C M « U 3 t m t u z
• o > 9 > 9 » 9 » 9 9 c s - i i n o i n 10 ^ » CM 9 CV * _ l CM i o a t r v • • r^ o « » -— — «. • — i - tu
M i X ta
• K . * a t • — * i o * a - • a i n z a CM CM CMUI I U
a - i Z _l IU •« * »-
• 0 • » • » > . • » » . « K » 0 K u n u a 0 u
•* •€ J _» jr z < < • - • t-» h - ^~
•r>» »K» » K . » K . « i s . Z K X M i o z n r * r«. i v rv. K . « - « f v « » « . « • « a i a i a i a t a t i a x a < • «
17
-
Bijlage 3 vervolg
«3 P>
• 3 •-» a
K 19 O Ce CL
ce o o
r- ta
i c o . r-UJ
«o cc o o
o n R M > c n « i p a «
« • • — • • — rv • •
l O N a i • «J » a « c s x n « a CM »» - • » s e w « » « te s» a •»
M M MC» — •>
s c M C M i i o s s i i o a
« s a ( « s s s »ca
C M a r « « f O C U * i a • • M i o r » —
s n s a « a a K * a
- » a t n a a c M « » - « - «
s e v n a « n n n > * a s M V S x N a a »
• » • » © !
- • •«> e a « « n s i o Ck » C V C I C C ' M C W — I O
s s s s s n n e a * n n a s « s o « n « «*CMa-«a~«arv«rn
s a e s s n a a K « rvacMvrvcrcM«*»««
CK n
a> ••
o •• -«
»
» ca s -»
« n a -• a -«
M a> •* «i
a
a a a s a s s a a a a a • • « c t c c t s i i i a - • a N M a K a a e u x n « CM a
a a a a n a a a a a a a B s s < D a > < o c » ^ a a a a io io ¥> i o «* rv i o •» a a r» lo
••CM - • - • ( «
s a a a - « s s a a • - * a «• » «* « -« *» s CM »» - • n O N M a x n M N a . » a t
- • a a a a a ~ r v » a a a « c e a n N x N a » a - • • « a rv « io CM a a « « • • a a • * a
a a a a - s e s a a — a a a «r a a a a » « B K « a rv a a • *
a a a a a s s a « e a a a a CM a c M a K. «* «* a a a N a x t i n x s a K M CM a
«t - . - « - . - » - • CM
a a a a a a » a a a a a n « a s c v a CM ro ro a v n s M i a i B K « « rv
s a a s s a n s M « a a n K « s « c a G » M CM a • • a a A N S A t a x M rv » — » » « M a
a a a a s a a a a a a a - i a i T « « » - » » « S B CM « * _ ! • • « N T O S O K I K I O - « r v
-
Bi j l age 4
Vol ledige t e k s t van he t programma VACANT
FORTRAN V09 tfl0 16124146 12-JUL-77 PAGE 1
C PROGRAMMA VACANT I CH -N0 IU20 C C ONBEKENDKOOE IN EEN DATAFILE ZETTEN, JUNI 1977 GB8 C PROGRAMMAPAKKET U U INGEN. ICH 410,12 TNO 5450 C C XN EEN DATAFIlE KAM MEN ONBEKENOKODE ZETTEN, C DAT KAN OP DE VOLGENDE WIJZEN« C C BEMERKING OMSCHRIJVING C 1 DE GEHELE DATAFILE ONBEKEND MAKEN, C 2 PER WOORONUMMER ALLE RECORDS ONBEKENO MAKEN, C 3 PER RECORD ALLE WOORDNUMMERS ONBEKEND MAKEN, C 4 EEN COMBINATIE VAN OPGEGEVEN RECORDS EN OPGEGEVEN MOQRO« C NUMMERS ONBEKEND MAKEN, C C EEN DATAFILE IS EEN DIRECT*ACCESS»PILE MET ALLEEN INTEGER C GETALLEN.DE STANDAARDWAAROE VOOR DE ONBEKEND»KODE IS 9990 , C EEN INTEGER GETAL IS EEN GETAL TUSSEN «32767 EN f32767 ZONDER KOMMA C OF PUNT, C C INSTRUCTIEI C C KAAHTKOLOM 1 VAN OE FILEKAART EN DE STUURKAART MAG NIET DE TEKENS C S , » EN* BEVATTEN, C STUURKAART,FILEKAART EN TITEUAART MOETEN MINSTENS EENMAAL GELEZEN C HOROEN, C C DE UNITNUMMERSI8 EN 5 ZIJN STANDAARD GERESERVEERD VOOR INPUT VIA DE C KAARTLEZER EN OUTPUT VIA DE REGELDRUKKER, C C • GEBRUIKISAS OKtl-NAAM«,? VOOR OE DATAFILE, C SRU DK1IVACANT.L0A C • LEES OE STUURKAART MET« (6A1) C KAARTKOLOM 1 NIE7 BLANK VOOR LEES FILEKAART, C 2 LEES TITtLKAART, C 3 MAAKT OE GEHELE DATAFILE ONBEKEND, C 4 MAAKT PER WOORQNUMMER ALLE RECORDS ON C BEKEND, C 5 MAAKT PEN RECORO ALLE WOORDNUMMERS ON C BEKEND, C 6 MAAKT EEN COMBINATIE VAN OPGEGEVEN C RECORDS EN OPGEGEVEN UOORONRS, ONBE« C KEND, C * LEES OE FILEKAART MET« (6AI,Il,2I5,6At) C FILENAAM,UNITNUMMER,AANTAL RECORDS EN AANTAL NOOROEN PER RECORO C VAN OE DATAFILE EN EVT, EEN NIET«STANOAAR0«AAROE VOOR DE ONSEKEND-C KODE, C * LEES DE TITELKAART KETI (60A1) C l IN KOLOM 1 EN MAXIMAAL 79 TEKENS TEKST, C • EN PER BEWERKINGI C , VOOR BEWERKING II C HORDEN VEROER GEEN KAARTEN INGEVOERD, C , VOOR BEMERKING 21 C LEES MAXIMAAL 16 WOORDNUMMERKAARTEN HETl (1615) C • MAXIMAAL 16 ftOORQNUMMERS PER KAART, C BLANKE WOORDNUMMERS NORDEN OVERGESLAGEN, C AFSLUITEN MET SEOO, C , VOOR BEWERKING 31 C LEES MAXIMAAL 16 RECORDKAARTEN HETl (1610)
19
-
Bijlage 4 vervolg
fORTRAN V09.B0 16184140 12.JUL-77 PAGE
0801 0002 0003
MAXIMAAL 16 HEC0R0NUMMER3 PER KAART, BLANKE RECORONUMMEHS WCRQEN OVER GESLAGEN, AFSLUITEN HET »EOD,
, VOOR BEWERKING 41 LEES MAXIM*»L 16 RECORDKAARTEN METl
MAXIMAL 16 KFCOKDhllMMENS PEK KAART, BLANKE RECOROMJHMERS WOHOEN OVERGESLAGEN, AFSLUITEN MET ïEOD,
LEES MAXIMAAL 16 WOORDNUMMERKAARTEN METl MAXIMAAL 16 WOORQNUMMERS PEN KAART, BLANKE «OORDNUMMERS HORDEN OVERGESLAGEN,
AFSLUITEN MET SEOO, * LEES NIEUWE STUURKAART OF $EOD VOOR STOP,
VERKLARING VAN DE STOPKOOEI 1390 000000 SEOO IS GELEZEN IPV, DE STUURKAART, 1350 000001 »EOO IS GELEZEN IPV, OE FILEKAART. 1390 000002 SEOO IS GELEZEN IPV, DE TITELKAART,
(1619)
(1619)
BYTE FILE(6),OAT(9),NEWNOT(6),IGOTO(6),0LANK,TXTEL(S0),A(133) BYTE B(6) INTEGER UNlT,UNITI,UNITO,MOR0(l7,l6),IREC(17,l6),KREC(ir,16),KWOR0
•(17,16),MREC(16),L(2S6)
0004 0009 0006 0007
100 F0RMAT(6A1,X!,2X9,6A1) 101 F0RMATCI6) 102 F0RMATCB(»A1) 103 P0RMATC«+'lllX,6Al,6X,9Alj 104 F0RMAT(16I9)
0000 0010
0011
0012
0013 0014 0019
0016 0017 0010 0019 0020
0021
0022 0023 0024 0029 0026 0027 0020 0029 0030
200 FORMATC//' IN OE GEHELE DATAFILE«'6A1 ' STAAT ONBEKENOKODE,•) 201 FORMATC/' IN OATAFlLEl'OAl' STAAT ONBEKENOKODE IN OE NOOROEN VAN A
•LLE RfCOROS MET WOPRDNUMMERSI' ) 202 FORMATC/' IN 0ATAFILEI'6A1' STAAT ONBEKENDKOOE IN OE NOOROEN VAN A
«LLE WOnRONUHMERS HET RECORDNUMMERSI' ) 203 FORMATC/' IN 0ATAFILEC6A1' STAAT ONBEKENOKODE IN DE NOORDEN VAN R
•ECnHONUMHERSl ') 2H9 FORMATC' MET HOORONUMMERSl ') 207 FORMATC1H ,132*1) 200 FORMAT CIS)
CALL SETERR(6,10) CALL DATE(OAT) UNITI»8 UNIT0«5 BLANKalH
1 READ(UNITI,102,END*999) IGOTO
IFCIGOTO(l),EO.BLANK) GO TO 2 READ(UNXTI,100,END*997) FILE,UNIT,NREC,NNORD,NENNOT N0Y«9999 00 40 lal,6 IFCNEHNOT(I),NE,BLANK) GO TO 41
40 CONTINUE GO TO 42
41 DECOOE(6,101,NENNOT) NOT 42 DEFINE FILE UNlT(NREC,NHORO,U,IVAR)
STUURKAART
FILEKAART
TITELKAART
20
-
Bijlage 4 vervolg
FORTRAN V t » , M 16124148 12-JUL-77 PAGE 3
0031 2 IFUGf)TO(2).NE,BLANK) READfUNITI,102,EN0a998) TITEL 0032 IFCIGOTO(l),EO.BLANK,AND,IG0T0(2),EQ,BLANK) GO TO 3 0033 WNITE(UNITO,102) TITEL 0034 WRITE(IINITO,103) KILE,OAT
C HELE FILE VULLEN MET ONBEKENDCODE 0039 3 IF(ir.0T0C3).eiJ.BLANK) GO TO 3 0036 DO 43 K«i,NwOHO 0037 43 L(K)»NOT 0030 00 4 I*1,NNEC 0039 4 NRITE(UNIT«I)(L(J),J"»#N«:ORD) 0040 WRITE(UNITO,200) FILE
C C PER WOORDNUHMCR ALLE RECORDS OPVULLEN MET ONBEKENOCOOE C
004} 3 IF(IG0TO(4),EU,BLANK) GO TO 11 0042 WR!TE(UNlT0,2at) FILE 0043 00 64 IX» l,17 0044 RE*0(UWITI,1?4,END«23) (WORD(IX,I),I»i,10) 0043 64 CONTINUE 0046 23 00 *> J*1,NREC 0047 REIO(UNITU) (L(JX),JX«I,NW0RD) 0040 00 7 IX»l,l« 0049 00 7 1-1,1« 0030 IF(WORn(lx,I),LE,0) GO TO 7 0031 K«MJR0(IX,I) 0032 L(K)«NOT 0033 7 CONTINUE 0034 KRITE(UNIT'J) (L(JX),JX»1,NWORD) 0053 9 CONTINUE 0036 Kaft 0057 N>32767 01158 DU B IX»1,16 0059 00 8 1*1,IS 0060 IF(IX,EO.10,AND,I.EO,i6) Kat 0061 IF(WORO(IX,I),EQ,I0.AND,K,EO,0) GO TO 8 0062 IF(K,GT.d.*NO,WORD(16,16),EU,0) GO TO 60 0063 ENCODE(S,2*8,8) WORU(IX(I) 0064 66 IFCK.GT,") Ni22 0063 1FCN.LE.22) GO TO 67 0066 Ou 68 M«l,133 0067 68 A(H)aetANK 0068 Nal 0069 MX»O 0070 67 MXanX+1 0071 OU 69 Hal,9 0072 69 A(M*HX*(MX-l)*3)aB(M) 0073 00 70 Mal,3 0074 70 B(M)aBLANK 0073 IFfri.E0.22) GO TO 71 0076 NaNtl 0077 GO TO 8 0078 71 NRITE(UNITO,207) A 0079 Na32767 0066 6 CONTINUE
C C PER RECORD ALLE W O O R O N U M M E R S OPVULLEN MET ONBEKENOCOOE C
0061 11 IFCIG0T0C3),EO.BLANK) GO TO 16 0082 HRITE(UNITO,202) FILE 0063 DO 65 IX«1,16
21
http://IFfri.E0.22
-
Bijlage 4 vervolg
FORTMAN V09 ,00 16124140 12-JUL-77 RA6E 4
0084 READCUNITI,104,EN0»24) ( I R E C C I X , I ) , I « i i 1 6 ) 0089 09 CONTINUE 0086 24 00 13 IX«1 ,1« 0087 00 13 t a l , 1 6 0068 I F ( I R E C { I X , I ) , t E . 0 ) 00 TO 13 0089 LHEC»IRCC(IX,n 0090 R£A.)(UNITIUREC) CL(J),Jal,NWORD) 0091 OU 44 KilfNWOrtD 0092 44 L0O«N0T 0093 WRITE(UNIT'UREC) (U(J),J»l.NHORO) 0004 13 CONTINUE 0099 K«0 0096 NI32767 0097 00 14 IX«l,t6 0098 00 M Ut,16 0099 IF(IX,EQ.l6.AN0,I.EQ,16) K«l 0100 IFCIREC(IX,I),EQ.a.*ND,K,EQ,a) 60 TO 14 0101 IFCK.GT.tl,AN0,IREC(16,16),EU,0) 60 TO 78 0102 ENCODEC5,20B,B) IREC(IX#X) 0103 72 IF(K,GT,0) N « 2 2 0104 IFCN.l.C.22) GO TO 73 0109 00 74 MM,133 0106 74 A(M)aQUNK 0107 N«l 0108 *f* 0109 73 HX«HXtl 0110 00 75 Hal,9 0111 79 A(MtHX+(*X-l)*9)*B(H) 0112 DO 76 Mal,9 0113 76 B(«)a8UNK 0114 ins.EQ.22) 60 TO 77 0119 N«N+l 0116 GO TO 14 0117 77 WHITE(UNIT0,207) A 0110 Na32767 0119 14 CONTINUE
C C IN COMBINATIE METlOPGEGEVCN RECORDS EN OPGEGEVEN MOORONUMMERO c
0120 16 IF(IG0TO(6),EQ.BLANK) 60 TO 1 0121 Do 47 Ix*l,16 0122 00 47 Ial,i« 0123 KREC(IX,I)a0 0124 KWORO(IX,I)a0 0125 47 CONTINUE 0126 00 17 IX"!, 17 0127 RE*O(UNITI,104,END>18) (KREC(IX,I),I«l,16) ' 0126 17 CONTINUE 0129 18 00 19 JX«1,17 0130 RtADCUNITI,104,END»22)(KWORO(JX,J),Jal,lfl) 0131 19 CONTINUE 0132 22 DO 49 IX»l,J6 0133 00 49 lal,16 0134 IF(KREC(IX,I),LE,0) 60 TO 49 0139 40 LREC«KREC(IX,I) 0136 READ(UNIT
-
Bijlage 4 vervolg
FORTRAN V|6,00 1612414« 18»JUL"77 PAOE
0141 L(N)«NOT 0142 29 CONTINUE 0143 WRITE(IINIT'LREC) CL(N),N«l,NHOR0) 0144 ' 43 CONTINUE 0145 WRITE(UNITO,203) FILE 0146 K>0 0147 N»32767 0146 00 31 IX«1,16 0149 DO 51 1*1,16 0150 IF(IX,EQ.l6,*N0,I,EQ,ia) M l 0191 IFCKREC(IX,I).EQ.0.AND.K.EQ,0) 60 TO 91 0192 IF(K.GT.O,ANO(KREC(16|16)«EO,0) 60 TO 92 0153 ENCOOE(S,208,B) KREC(IX,X) 0134 92 IF(K.GT.fl) N»22 0155 IF(N,UE,22) GO TO 90 0150 00 53 M.1,133 0157 93 *(M)iBLANK 0156 Nil 0159 *X«0 0160 90 MX«MX*1 0161 DO 54 M»l,5 0162 94 *{rttfX+(rtX«l)*3)»B(M) 0163 DO 62 Hal,9 0164 02 B(M}«BLANK 0165 IF(N.E>3.22) CO TO 60 0166 N«N*l 0167 GO TO 51 0168 60 WRITE(UNITO,207) A 0169 N«32767 0170 91 CONTINUE 0171 WRITECUNITO,209) 0172 K«W 0173 N«32767 0174 00 5« TX«l,te 0173 00 56 I«l,16 0176 IF(IX.F0.16,ANO.I.E0.16) K*l 0177 IF(KWORD(IX,I),EQ,H,AND,K,EO,0) GO TO 96 0178 IF(K.GT.0,ANO,KWORO(16,16),EQ,0) 60 TO 97 0179 ENCOD£(5,208,6) KNORDCIX,!) 0180 97 IF(K.GT,«) N»22 0161 IFCN.LE.22) GO TO 99 0162 00 58 M.1,133 0183 90 A(M).BLANK 0164 Nil 0189 MX*t9 0186 99 MX*MX+l 0187 00 59 M . 1 , 5 0188 99 A(HtMX+(MX-l)*5)»B(M) 0189 DO 63 M»l,5 0190 03 B(M)«BLANK 0191 IFCN.E0.22) GO TO 01 0192 NsN*l 0193 GO TO 56 0194 61 »RITE(UNlTOf207) A 0195 N132767 0196 96 CONTINUE 0197 GO TO 1 0198 999 STOP 0199 997 STOP 1 0200 960 STOP 2
23
-
Bijlage 4 vervolg
FORTRAN V0B.00 10134140 12-JUL-77 PAGE
•201 ENO
ROUTINES CALLEDl SETERR. OATE
OPTIONS •/LI,/0N,/CK,/OPtl,/GO
BLOCK LENGTH HAIN, 3790 (016690)*
••COMPILER — » i CORE** PHASE USED PREE
DECLARATIVES 00803 01161 EXECUTABLES 01103 00921 ASSEMBLY 02201 04912
24