Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: программирование на языке Assembler


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Assembler

Выпуск № 108
от 09.04.2005, 18:20

Администратор:Калашников О.А.
В номере:Вопросов: 1, Ответов: 1


Вопрос № 19184: Уважаемые эксперты! У кого-нибудь есть готовый генератор случайных чисел или алгоритм, как его сделать? Я полный новичок в ASMе, но очень надо! Заранее благодарен, Andtrew...

Вопрос № 19184
Уважаемые эксперты!
У кого-нибудь есть готовый генератор случайных чисел или алгоритм, как его сделать?
Я полный новичок в ASMе, но очень надо!
Заранее благодарен, Andtrew
Отправлен: 03.04.2005, 20:12
Вопрос задал: Чхинджерия Андрей Баджгеевич (статус: Посетитель)
Всего ответов отправлено: 1

Отвечает: Евгений Иванов
Здравствуйте, Чхинджерия Андрей Баджгеевич!
;Мощный генератор случайных чисел. IN -> AX-range; OUT -> AX-число 0...AX-1;
;Взят из C++;
proc Rnd ;=========================================================
push bx cx dx ax
mov bx,3
mov cx,43FDh
mov ax,wptr [bp+Seed-dat]
mov dx,wptr [bp+Seed+2-dat]
push bx ax
or bx,dx
mov bx,cx
jnz rnd_1_1
mul bx
pop ax bx
jmp rnd_1_2
rnd_1_1:
mul bx
mov cx,ax
pop ax dx
push ax
mul dx
add cx,ax
pop ax
mul bx
add dx,cx
rnd_1_2:
add ax,9EC3h
adc dx,26h
mov wptr [bp+Seed-dat],ax
mov wptr [bp+Seed+2-dat],dx
mov ax,dx
and ah,127
pop cx
cwd
idiv cx
mov ax,dx
pop dx cx bx
ret
endp
sub ah,ah ;Установим начальное RND
int 1Ah
mov wptr [bp+Seed-dat],dx
mov wptr [bp+Seed+2-dat],cx
Ответ отправил: Евгений Иванов (статус: Профессор)
Отправлен: 03.04.2005, 21:05


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, RusFAQ.ru, Россия, Москва. Все права защищены.
Идея, дизайн, программирование, авторское право: Калашников О.А.


http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.prog.faq
Отписаться

В избранное