Натолкнулся вот на такой
ГПСЧ :
Код
uint32_t xor128(void) {
static uint32_t x = 123456789;
static uint32_t y = 362436069;
static uint32_t z = 521288629;
static uint32_t w = 88675123;
uint32_t t;
t = x ^ (x << 11);
x = y; y = z; z = w;
return w = w ^ (w >> 19) ^ (t ^ (t >> 8));
}
Возникло несколько вопросов:
1: x = 123456789; y = 362436069; z = 521288629; w = 88675123; Это ,я так понял, десятичные начальные значения переменных?
2: могут ли эти начальные значения быть любыми (кроме 0 конечно) или в них есть тайный смысл?
3: результатом работы ГПСЧ есть 32-х битное число, а если мне достаточно одного байта то какой (из 4-х байт) лучше использовать?