Het geheugen
25
De bytes die door de opdracht in een programmalijn in beslag worden genomen, hoeven
niet alle van hetzelfde register afkomstig te zijn. In de volgende illustratie bijvoorbeeld
neemt de opdracht LBLTPT de laatste twee bytes in het ene register en de eerste vier bytes in
het andere register in beslag. De overblijvende bytes in deze registers zouden gebruikt zijn
voor de opdrachten in de programmalijnen die onmiddellijk voorafgaan aan en volgen op
de opdracht LBLTPT.
1 register
1 register
o\
.
1.
L1 1
1
l
11
1
Ll
l
07 LBLTPT
w
6 bytes
Onder bepaalde omstandigheden kunnen enkele bytes van een register niet gebruikt
worden. Dit gebeurt, wanneer andere opdrachten die bytes in dat register gebruiken
weggehaald worden en wanneer een getal in een programma ingetoetst wordt. Het kan
ook gebeuren, wanneer een funktie, getal of ALPHA-rij binnen een programma, of aan
het eind van een programma dat niet het laatste programma in het geheugen is, wordt
ingevoegd. (Dit wil zeggen, telkens wanneer een opdracht ergens wordt ingevoegd,
behalve aan het eind van het programmageheugen.) Als er bij het invoegen van een nicuwe
opdracht niet al ongebruikte bytes beschikbaar waren tussen de bytes die de opdrachtenin
de aanliggende programmalijnen bevatten, dan worden alle volgende opdrachten zeven
bytes omlaag geschoven, de nieuwe opdracht wordt in het juiste aantal bytes geplaatst en
de rest van de bytes in dat register blijft ongebruikt.
Alle ongebruikte bytes die over de programmaregisters verspreid zijn kunnen benut
worden door PACK uit te voeren. Het programmageheugen wordt dan ,.ingedikt"": de
opdrachten binnen alle programma's worden naar de ongebruikte bytes opgeschoven, en
zo kunnen — afhankelijk van het aantal ongebruikte bytes — nicuwe registers beschikbaar
komen voor het opslaan van programma's. Het programmageheugen wordt ook
automatisch ingedikt wanneer de opdracht
(<] (<] wordt uitgevoerd, wanneer
complete programma's worden weggehaald (met CLP), en wanneer een opdracht
ingevoegd of toegevoegd wordt waarvoor op dat moment niet voldoende bytes in het
geheugen beschikbaar zijn.