疑似ランダムシーケンステスト

通信チャネルのエンドユーザーとして、変更された通信システムのテストに参加する必要がありました。実際のところ、私たちの参加は簡単でした。ラップトップとインターフェイスユニットを持ってきて、それをシステムに接続し、コンピュータから情報フレームをある種の「ペイロード」として継続的に出力しました。





開発者はさまざまなモードでシステムを実行する必要があり、次に遠隔測定者は受信したデータ配列を提供する必要がありました。その後、各フレームのチェックサム(申し訳ありませんが、循環冗長コード)を確認し、エラーが見つかった場合は、テストレポートにその番号を入力する必要がありました。





したがって、テスト用の簡単なプログラム(ソフトウェアの観点から)を準備する必要がありました。そして、「情報」として何を提供するのかという疑問が生じました。結局のところ、私たちは些細な「格子」AA55ではなく、プリミティブなガロア多項式を使用して疑似ランダムシーケンスを解決しました。





アルゴリズムは非常に単純です。





;----    ----

:  MOV       EBX,   ;  
      MOV       CX,_   ;   

;----      ----

M1:   MOV       EAX,1
      XCHG      CH,CL
      SHL       EAX,CL
      XCHG      CH,CL

;----    ----

      ROR       EBX,1
      JNB       M2

;----   -  ----

      AND       EAX,EBX 	;   
      MOV       EAX,1
      JNZ       @
      SHL       EAX,CL
      OR        EBX,EAX 	;  =0,  1
      JMPS      M4
@:    SHL       EAX,CL
      NOT       EAX
      AND       EBX,EAX 	;  =1,  0
      JMPS      M4

;----   -  ----

M2:   AND       EAX,EBX 	;   
      MOV       EAX,1
      JZ        @
      SHL       EAX,CL
      OR        EBX,EAX 	;  =1,  1
      JMPS      M3
@:    SHL       EAX,CL
      NOT       EAX
      AND       EBX,EAX 	;  =0,  0

;----   ----

M3:  CLC
     RCR       ,1
     JMPS      @

;----   ----

M4:  STC
     RCR       ,1

;----     ----

@:   DEC           	;    ?
     JNZ       M1

     MOV       ,8  	; 8 
     MOV       ,EBX ;  
     MOV       AL, 	;   
     RET
      
      







( ) . 32 . .





, 2 . , . , .





. , : « » !





? . . : . , - , .





: , «» ( ? «»!), . : ! , .





-, -. !





.





, . , « »? – . , , : , .





, . « » , , . – , «» ( ). , « » : , .





, , , , .





, (, , ) . . 20 4 , , , .





, . , , . , , , , , . , , , FPU .





- . , , - . : . , , « », : « , , » - , , ! ( ) .





ガロアが幼い頃に亡くならなかったとしたら、彼はさらにいくつの発見をすることができたでしょう。そして、彼がチャールズ・バベッジやエイダ・ラブレースと会ったら、おそらく私たちはまったく異なるコンピューターの世界に住むでしょう...








All Articles