7.7.1 Vullen met een waarde
function fill ( byte buf[ ], int length, byte c )
De functie fill vult een aangegeven bytebuffer – variabele met een aantal gelijke tekens, b.v. spaties.
buf
referentie aan een bytebuffer – variabele
length
vullengte
c
teken (ASCII – code)
7.7.2 Kopiëren
function copy ( byte dest[ ], int pos, byte src[ ],
De functie copy kopieert een aantal (length) tekens uit een bytebuffer – variabele (src) naar een bepaalde
positie (pos) van een andere bytebuffer – variabele (dest). U dient er op te letten, dat de doelbuffer
genoeg plaats biedt voor de gekopieerde tekens.
7.7.3 Opslaan van numerieke waarden in een bytebuffer
Bij het opbouwen van bytebuffers voor een overdracht moeten vak numerieke waarden opgeslagen
worden, die meer plaats nodig hebben dan een enkele byte: Integer-, Long- of vloeiende komma –
waarden. Daarvoor kunnen de volgende functies van de module mem.c2 gebruikt worden:
function putint ( byte dest[ ], int pos,
function putlong ( byte dest[ ], int pos,
function putfloat ( byte dest[ ], int pos,
Voor alle drie functies is
dest
referentie aan een bytebuffer – variabele
pos
uitvoerpositie in de buffer
c
de getalswaarde
De functie putint slaat de waarde op in 2 bytes vanaf de positie in de volgorde HiByte – LoByte;
Putlong slaat de waarde op in vier bytes vanaf de positie pos in de volgorde:
HiByte van HiWord - LoByte van HiWord – HiByte van LoWord – LoByte van LoWord.
putfloat slaat de waarde op in 8 bytes vanaf de positie pos in het IEEE- format. Omdat dit format niet door
alle computersystemen op dezelfde manier ge nterpreteerd wordt, moet putfloat alleen gebruikt worden
voor de data – uitwisseling tussen C-Control II – systemen.
7.7.4 Lezen van numerieke waarden uit een bytebuffer
Bij de functies voor het schrijven van numerieke waarden is er een dienovereenkomstige functie voor het
lezen van de waarden uit een bytebuffer.
function getint (byte src[ ], int pos )
function getlong (byte src[ ], int pos )
function getfloat (byte src[ ], int pos )
Voor alle drie functies is:
src
referentie aan een bytebuffer - variabele
pos
leespositie in de buffer
int length )
int value )
long value )
float value )
returns int
returns long
returns float
60