ГОСТ Р ИСО 28640 - 2012
ini i ;
unsigned long 4p0, *pl. *p2, 4p3 ;
if (state_i >= P) (
statc_i = 0 :
pO = state ;
pi = state + Ql :
p2 = state + Q2 ;
p3 = state + Q3 ;
for (i=0 ; i<(P-Q3) : i++)
*p0++ A= *p l+ + л “p2++ A *p3++;
p3 = state ;
for ( : i«P-Q 2) ; i++)
♦p0++ A= *pl++ A *p2++ A*p3++:
p2 = state:
for ( : i<(P-QI) ; i+ + >
♦p0++ A= *pl++ A “p2++ A»p3++;
pi = state;
for ( : i<P ; i++)
*p0*+ A= *pl++ A*p2++ A*p3++;
J
return state |statc_i++) :
/♦ (W -lj-битовос целое ♦/
long gfsr5_31 (void)
I
return (long) (g fs r 5 ()» l):
П рим ечание - Соответствующий текст программы пятнпарамстрпчсского GFSR на языке BASIC
приведендля информации.
REM
Текст программы пятипарамстрнческого GFSR на языке BASIC’
/ 4 4 9 4 4 9 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 * 4 4 9 4 4 4 4 4 4 4 4 4 4 4 9 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 9 4 4 4 4 4 4 4 4 9 4 4 9 9 /
OPTION BASE 0
REM
/ 4 4 9 4 4 9 4 4 9 4 4 9 4 4 9 4 4 4 4 4 9 9 4 9 9 4 9 9 4 4 9 4 4 9 4 4 9 4 4 9 4 4 9 4 4 9 9 4 4 9 4 9 9 4 4 9 4 4 9 4 4 9 4 4 9 4 4 4 4 4 9 4 4 9 4 4 9 4 /
DECLARE NUMERIC P
LET P = 521!#dcfine P 512
REM f* Ql < Q2 < Q3 */
DECLARE NUMERIC Ql
24