[an error occurred while processing this directive]
Вам на каком?(+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено A_Sergei 15 октября 2002 г. 15:54
В ответ на: Подскажите пожалуйста где взять программу генерирования случайных чисел на ассемблере? отправлено Reko 15 октября 2002 г. 15:34

Вот стандартный алгоритм равномерного распределения. На асм перевести несложно ведь?

#include

#define MULTIPLIER 0x015a4e35L
#define INCREMENT 1
/*
Description rand uses a multiplicative congruential random number
generator with period 2^32 to return successive pseudo-
random numbers in the range from 0 to 2^15 - 1.

The generator is reinitialized by calling srand with an
argument value of 1. It can be set to a new starting point by
calling srand with a given seed number.
*/
static long Seed = 1;
int rand(void)
{
Seed = MULTIPLIER * Seed + INCREMENT;
return((int)(Seed >> 16) & 0x7fff);
}

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru