Pseudo Random Sequence Testing

As end users of the communication channel, we had to take part in the tests of the modified communication system. As a matter of fact, our participation was simple - to bring a laptop and an interface unit, connect it to the system and continuously output any information frames from the computer as some kind of "payload".





The developers had to run the system in different modes, and then the telemetrists had to give us the received data array. After that, we had to check the checksums (sorry, cyclically redundant code) of each frame and, if we find errors, enter their number in the test report.





Therefore, it was necessary to prepare a simple program (in terms of software) for testing. And the question arose, what to give out as "information"? After all, we decided not the trivial "lattice" AA55, but a pseudo-random sequence using a primitive Galois polynomial.





The algorithm is really very simple there:





;----    ----

:  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 .





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





If Galois had not died at a young age, how many more discoveries he could have made. And if he met with Charles Babbage, or with Ada Lovelace, perhaps we would now live in a completely different computer world ...








All Articles