ГОСТ Р 53556.12-2014
I else I
/•
complex multiplications */
for (k = \:k< № :k+ + )f
rotatelN132(4*k*S1NE_DATA_SIZE/(2*M).
хЦ1*M+к J.xrfl*M+kj,
&xi[l*M+kj,&xrfl*M+k]);
rotate!NT32(4*k*SINE_DATA_SIZE/( 2*M),
-xi[l*M+M2-k],-xr[l*M+M2-k].
&xrll*M+M2-k),&xill*M+M2-kJ);
I
for (k =
1;
3*k <
A/4;
k++) (
rotateINT32(4*3*k*SINE_DATA_SiZE/(2*M),
xill*M
+
М2+кj.xrfl*M+M2+kj.
&xifl*M+M2+kJ.&xr[l *M+M2+k}):
rotate1NT32(4
*3
*k*SINE_DA TA_SIZE/(2*M),
■xi[l*M+M-k J,
л
/-/1*M+M-kJ,
&xrll*M+M-k],&xi[l*M+M-kj);
I
for(;3*k<2*M 4;k++)f
-
rotateINT32(4*(M2-3*k)*S1NE_DATA_SIZE/(2*M),
xi{l*M+M2+kI. xr/l*M+M2+kj,
&xr[ImM+M2+kj,&xi{l*M+M2+k
/
):
rotateINT32(4*(M2
-3
*k)*SINE_DATA_SIZE/(2*M),
-xill*M+M-k},-xrll*M+M-k}.
&xi[I*M+M-kl,&xrtl*M+M-k]);
I
for (;3*k<3*M4; k++)f
rotutelNT32(4*(3*k-M2)*SINE_DATA_S/ZE/(2*M),
-xr[l*M+M2+kj,xilI*M+M2+k],
&хЩ *М+М2+к]. &xr[l*M+M2+k)):
rotatelNT32(4*(3*k-M2)*S1NE_DATA_SIZE/(2*M).
-xr[l*M+M-ki,-xi[l*M+M-kJ,
&xrll*M+M-k],&xi[l*M+M-kj);
I
rotatePI usMinusNormlNT32(xijl*M+M
4
],xr{I*M
+
M4
/.
&xr[l*M+M41. &xi(l*M+M4 J):
51