unit RacionalEngine;
interface
Const length = N - 1;
type index = 0...length;
speceint=array [index] of byte;
Rac=record sign (minus, plus);
Numerat, denominat : specint end;
var RR:Rac;RZ,RB:Boolean;
{RR, RZ va RB – bizning virtual protsessor registrlari, RR – har bir arifmetik amallar natijasi qoladigan registr (shunday nomlanadigan summator), RB – ratsional sonlarni ifodalovchi chegeraga chiqarish belgisi (true chiqishda), RZ – nolga bo’lish belgisi (bunday holda true)}
procedure AddR (a, b: Rac; var c:Rac);
procedure SubR (a, b:Rac; var c:Rac);
procedure MultR (a, b:Rac; var c:Rac);
procedure DivR (a, b:Rac; var c:Rac);
{ ratsional sonlarni qo’shish, ayirish, bo’lish va ko’paytirish jarayonlari spetsifikatsiyasi--- a va b amal argumenntlari, c- natija. Argumentlardan biri RR registr natijasi hisoblanganda, bu amallarni modifikatsiyasi bo’lishi mumkin.}
Do'stlaringiz bilan baham: |