User Tag List

Показано с 1 по 10 из 229

Тема: Написание программ для БК0010

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #11

    Регистрация
    06.12.2017
    Адрес
    г. Москва
    Сообщений
    1,724
    Спасибо Благодарностей отдано 
    167
    Спасибо Благодарностей получено 
    406
    Поблагодарили
    257 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Генератор случайных чисел спрашивали. Вот, например. Простой, короткий, быстрый, с хорошим разбросом.
    Использование таймера закомментировано (символами "точка с запятой"), но кому надо - может раскомментировать. Единственное, между запуском таймера и началом работы генератора вставьте какую-то пользовательскую активность типа нажатия клавиш в меню и т.п., чтобы при каждом запуске получалось действительно случайно.

    Первая картинка - код, вторая результат вывода на экран 16536 случайных слов:

    Нажмите на изображение для увеличения. 

Название:	rnd-Manwe.jpg 
Просмотров:	301 
Размер:	18.4 Кб 
ID:	68360 Нажмите на изображение для увеличения. 

Название:	rnd.jpg 
Просмотров:	314 
Размер:	19.2 Кб 
ID:	68361

    Код:
    ; Random generator for BK-0010 (c) Manwe/SandS 2019
    ; Compile this source with PDPy11: https://github.com/imachug/PDPy11
    
    ;	TIMER=177712		; timer port address
    
    ;	MOV #123,@#TIMER-4	; timer initial value
    ;	MOV #1,@#TIMER		; stop and init timer
    ;	MOV #20,@#TIMER		; start timer
    
    	MOV #20000,R0		; generate 20000 random numbers
    	MOV #40000,R3		; screen address
    1:	CALL RND
    	MOV R1,(R3)+		; put random number on the screen
    	SOB R0,1
    	HALT
    
    RND:	MOV RND1,R1
    	MOV RND2,R2
    	ROR R1
    	ROL R2
    	SWAB R2
    ;	ADD @#TIMER-2,R2
    	XOR R2,R1
    	MOV R1,RND1
    	MOV R2,RND2
    	RET
    
    RND1:	.WORD 173451
    RND2:	.WORD 54102
    
    	.END
    Ну и, понятное дело, если в вашей программе много свободных регистров, то надобность в ячейках памяти RND1 и RND2 отпадает, всё можно хранить в регистрах R1 и R2. Такая процедура будет работать раза в два быстрее. Или в три.
    Последний раз редактировалось Manwe; 07.03.2019 в 13:15.
    manwe.pdp-11.ru

    Этот пользователь поблагодарил Manwe за это полезное сообщение:

    Oleg N. Cher(04.12.2021)

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. написание простейшей демки для тренировки
    от AAA в разделе Для начинающих
    Ответов: 121
    Последнее: 22.05.2012, 18:06
  2. написание музыки на Dendy.
    от s1moncpu в разделе Nintendo
    Ответов: 27
    Последнее: 25.05.2007, 05:34
  3. написание музыки на Dendy.
    от s1moncpu в разделе Музыка
    Ответов: 2
    Последнее: 16.05.2007, 10:59
  4. Тестирование программ
    от Vitamin в разделе Программирование
    Ответов: 5
    Последнее: 23.01.2005, 21:46

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •