[Overview][Constants][Types][Classes][Procedures and functions][Variables] Reference for unit 'System' (#rtl)

FillByte

Fill memory region with 8-bit pattern

Declaration

Source position: systemh.inc line 374

procedure FillByte(

  var x;

  count: SizeInt;

  value: Byte

);

Description

FillBytefills the memory starting at Xwith Countbytes with value equal to Value. This is useful for quickly zeroing out a memory location. When the size of the memory location to be filled out is a multiple of 2 bytes, it is better to use Fillword, and if it is a multiple of 4 bytes it is better to use FillDWord, these routines are optimized for their respective sizes.

Errors

No checking on the size of Xis done.

See also

Fillchar

  

Fill memory region with certain character

FillDWord

  

Fill memory region with 32-bit pattern

Fillword

  

Fill memory region with 16-bit pattern

Move

  

Move data from one location in memory to another

Example

Program Example102;

{ Program to demonstrate the CompareWord function. }

Const
  ArraySize     = 100;
  HalfArraySize = ArraySize Div 2;

Var
  Buf1,Buf2 : Array[1..ArraySize] of Word;
  I : longint;

  Procedure CheckPos(Len : Longint);

  Begin
    Write('First ',Len,' words are ');
    if CompareWord(Buf1,Buf2,Len)<>0 then
      Write('NOT ');
    Writeln('equal');
  end;


begin
  For I:=1 to ArraySize do
    begin
    Buf1[i]:=I;
    If I<=HalfArraySize Then
      Buf2[I]:=I
    else
      Buf2[i]:=HalfArraySize-I;
    end;
  CheckPos(HalfArraySize div 2);
  CheckPos(HalfArraySize);
  CheckPos(HalfArraySize+1);
  CheckPos(HalfArraySize + HalfArraySize Div 2);
end.