Доступ к отображаемой памяти 155

(MemL[O:$46C]-t)*55/1000:5:2,' секунд') ;

WriteLn('Сохраняем массив в файле TESTEMS.$$$...');

Assign(f,'testems.$$$');

{$!-} Rewrite(f,l) ;

{$!+} if IQResultoO then begin

WriteLn('Ошибка при создании файла!');

Vec.Done;

Goto LI end;

Vec.Store(f); {Сохраняем массив} if EMSErrorFlag then

begin {Была ошибка при сохранении} Vec.Done;

Goto LI end;

Vec.Done; (Освобождаем EMS} {Читаем массив из файла} WriteLn('Читаем массив из файла...');

Seek(f,0); {Начало файла} Vec.Load(f); {Загружаем массив} Close (f) ;

if EMSErrorFlag then

Goto LI; {Была ошибка} WriteLn('Еще раз подсчитываем его сумму...');

Sum : = 0 ;

for k := 0 to Sz-1 do begin

Sum := Vec.LongIntItem(k)+Sum;

if k mod 500=0 then begin

Write(k:10) ;

GotoXY(l,WhereY) end end;

WriteLn('Сумма = ':30,Sum:11:0);

Vec.Done;

LI:

{Определяем длину файла с текстом программы} s := copytParamStrtO^l/PosC.'/ParamStrtO^+'pas';

Assign (f,s);

Reset(f,l) ;

{Определяем количество SZ требуемых ему страница ST. := (FileSize(f)+LPage-l) div LPage;

Closed) ;