Скачиваний:
31
Добавлен:
01.05.2014
Размер:
1.73 Кб
Скачать
{ "ЋЇҐа жЁ®­­лҐ баҐ¤л Ђ‘Ћ€“" 2003 Ј®¤
‹ Ў®а в®а­ п а Ў®в  2
Ја. 9331 }
Program Lab2;

{$F+}

Uses Corout,CRT,DOS;

Procedure myDelay; { Њ Ґ¬бп ¤гамо ;) }
Var I,X : LongInt;
Begin
For I:=1 to 1000000 do
X := Round(3/2);
End;

{-----------------------------------------------------}
Procedure P1; far;
Begin
while true do begin
DirectS.Out('1');
myDelay;
end {while};
End {P1};
{-----------------------------------------------------}
Procedure P2; far;
Begin
while true do begin
DirectS.Out('2');
myDelay;
end {while};
End {P2};
{-----------------------------------------------------}
Procedure P3; far;
Begin
while true do begin
DirectS.Out('3');
myDelay;
if KeyPressed then
if ReadKey = #27 then
Begin
Writeln('‚л室 Ї® Є« ўЁиҐ ESC!');
Disable_Interrupt; { ‡ ЇаҐвЁвм_ЇаҐалў ­Ёп }
SetIntVec($08,Int08Save); { “бв ­ ў«Ёў Ґ¬ ®Ўа в­® ®Ўа Ў®взЁЄ }
Transfer(proc[3],main);
End;
End {while};
End {P3};
{-----------------------------------------------------}
Begin
ClrScr;
Writeln('„®бвгЇ­® Ї ¬пвЁ ў ­ з «Ґ: ',MemAvail);
{}
New(proc[1],Init(p1));
New(proc[2],Init(p2));
New(proc[3],Init(p3));
{}
Disable_Interrupt; { ‡ ЇаҐвЁвм_ЇаҐалў ­Ёп }
GetIntVec($08,Int08Save); { ‘®е࠭塞 бв ал© ®Ўа Ў®взЁЄ ЇаҐалў ­Ёп }
SetIntVec($60,Int08Save);
SetIntVec($08,Addr(Handler)); { “бв ­ ў«Ёў Ґ¬ бў®© ®Ўа Ў®взЁЄ ЇаҐалў ­Ёп }
{}
CurProc:=1;
Transfer(main,proc[CurProc]);
{}
Dispose(proc[1],Done);
Dispose(proc[2],Done);
Dispose(proc[3],Done);
{}
Writeln('„®бвгЇ­® Ї ¬пвЁ ў Є®­жҐ: ',MemAvail);
End {Example}.
Соседние файлы в папке LAB2