Циклические коды
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: сочинение изложение, рефераты бесплатно скачать
| Добавил(а) на сайт: Буданов.
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 | Следующая страница реферата
Kol:=n1-i1; while(Kol>0)do begin for i:=n1 downto 1 do r2[i]:=r2[i-1]; dec(Kol); end;
Kol:=n1-i1; while((Kol>0)and(j>=0))do begin r2[Kol-1]:=m2[j]; dec(Kol); dec(j); end; if((j=-1)and(Kol=0)) then begin for i:=n1 downto 0 do r2[i]:=r2[i] xor p2[i]; end else flag:=Kol; end; end else if(n1=j) then begin for i:=n1 downto 0 do begin r2[i]:=m2[j]; dec(j); end; for i:=n1 downto 0 do r2[i]:=r2[i] xor p2[i] end else if(j0)then begin k:=n1-flag; for i:=n1 downto flag do begin m3[k]:=r3[i]; dec(k); end; end
else begin for i:=n1-1 downto 0 do m3[i]:=r3[i]; end;
end;
Procedure MakeError(var m4:Move_code;var err:integer);
begin
Randomize; err:=Random(n); m4[err]:=m4[err] xor 1;
end;
Procedure Decoder(var m6:Move_Code);
var i:integer; k:byte;
begin k:=5; while(k>0) do begin for i:=0 to n-1 do m6[i]:=m6[i+1]; dec(k); end; for i:=n downto n-n1+1 do m6[i]:=0;
end;
Procedure BildMoveCodeMultiplication(var m7:Move_Code); var m1,m2,m3,m4,mm:Move_Code; i,j:integer; begin mm:=m7; m1:=m7; for j:=0 to 1 do begin for i:=n downto 1 do m1[i]:=m1[i-1]; m1[j]:=0; end; m2:=m7; for j:=0 to 2 do begin for i:=n downto 1 do m2[i]:=m2[i-1]; m2[j]:=0; end; m3:=m7; for j:=0 to 3 do begin for i:=n downto 1 do m3[i]:=m3[i-1]; m3[j]:=0; end; m4:=m7; for j:=0 to 4 do begin for i:=n downto 1 do m4[i]:=m4[i-1]; m4[j]:=0; end; for i:=n downto 0 do m7[i]:=mm[i] xor m1[i]xor m2[i]xor m3[i] xor m4[i];
end;
Procedure Correction(var m5:Move_code;p5:Polinom;var r5:Rest);
var i,Correctflag,i1:integer;
Count,Countcarry,Carryflag:byte;
begin
Correctflag:=0;
Countcarry:=0; repeat for i:=n1 downto 0 do r5[i]:=0;
Count:=0;
Divizion(m5,r5,p5,Correctflag); i1:=n1; while((i1>=Correctflag)and(r5[i1]=0))do dec(i1); if({(i1=Correctflag-1) or
(}(i1=Correctflag)and(r5[Correctflag]=1)){)} then m5[0]:=m5[0] xor r5[Correctflag] else begin
Carryflag:=m5[n]; for i:=n downto 1 do m5[i]:=m5[i-1]; m5[0]:=Carryflag; inc(Countcarry); end; until ({(i1=Correctflag-1) or
(}(i1=Correctflag)and(r5[Correctflag]=1));{);} while (Countcarry>0) do begin
Carryflag:=m5[0]; for i:=0 to n-1 do m5[i]:=m5[i+1]; m5[n]:=Carryflag; dec(Countcarry); end; end; end.
Приложение № 2
Процедуры и функции модуля _Serv.
Unit _SERV;
Interface
Uses
Crt,Dos;
Const
EmptyBorder =0;
SingleBorder =1;
DoubleBorder =2;
BorderChar:array[0..2,1..6] of Char=
Рекомендуем скачать другие рефераты по теме: курсовые, архитектура реферат.
Категории:
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 | Следующая страница реферата