ГОСТРИСО 28640 - 2012
REM•*««*•+•*• 4*++• +*****• +*/
FUNCTION SR32U(xA.xL)
REM 2006-06-03
IF xL = 0 THEN
LET SR32U = xA
ELSE1F xA = 0 THEN
LET SR32U = 0
ELSE
LET SR32U = INT(xA / 2 л xL)
END IF
END FUNCTION
FUNCTION Mul32U(xA.xB)
REM /444*4 A.В : unsigned long (32-bit) 44*44/
REM 2006-06-02
DECLARE NUMERIC MAH. MAL. MBH. MBL
LET MAH = 1NT(
x
A / 65536)
LET MBH = INT(xB / 65536)
IF (xA = 0) OR (xB = 0) THEN
LET Mu!32U = 0
ELSE1F (MAH = 0) AND (MBH = 0) THEN-
LET Mul32U = xA • xB
ELSE
LET MAL = xA - INTfxA / 65536) 4 65536
LET MBL = xB - 1NT(
x
B / 65536) 4 65536
LET MBH = MAH ♦ MBL + MAL 4 MBH + INT«MAL 4 MBL) / 65536)
LET MBH = MBH - 1NT(MBH / 65536) 4 65536
LET MAL = MAL 4 MBL
LET MBL = MAL - INT(MAL / 65536) 4 65536
LET Mul32U = MBL + 65536 4 MBH
END IF
END FUNCTION
B.6 Примеры
В таблице В.2 приведены примеры последовательностей случайных чисел, полученных с
использованием программ, приведенных в приложении В с установленными значениями
параметров (для проверки). Первые 5 псевдослучайных чисел и 5 псевдослучайных чисел с
промежутками в 1000 приведены для сравнения.
45