Главная
Все программы
Физические программы
Военные программы
Элементарная математика
Исскуственный интеллект
Тесты / демо
Документация
|
>> Все программы
Ниже представлен список и ссылки на программы для советского суперкомпьютера БРЭМ. Все программы содержат описания, многие (но уже не все) содержат подробные комментарии в самом программном коде. Для скачивания или просмотра (зависит от браузера) интересующей вас программы, просто нажмите надпись "Скачать" рядом с ней левой кнопкой мыши.
Итак, список!
- Программа "Часы" (Скачать)
Простые отсчётные "часы" (хотя, я бы назвал это обыкновенным таймером) для БРЭМ. Вводите в регистр 1 количество секунд, после которых счёт останавливается, и наслаждаетесь!
- РАРИТЕТ! Деление атомов (Скачать)
Видимо, программа 1972-го года. Оригинальное описание программы в файле гласит: "Программа для расчёта энергии текущего поколения и суммы этих энергий во время ядерного удара.".
- Эквивалентность массы и энергии (Скачать)
Реализация всем известной формулы Энштейна для БРЭМ - E=mc^2. Массу можно указать в регистре #1, остальные трогать не рекомендуется (приводит к сильным погрешностям в вычислениях). Результат (E) выводится в регистр 3.
- Проверка операций (Скачать)
Самый маленький тест памяти БРЭМ (ДЗУ), который я видел! Проверяет всего два регистра: увеличивает регистр 1 до тех пор, пока последний не станет равен регистру #2. Видимо, прототип программы "Часы".
- Вычисление синуса (Скачать)
Программа вычисляет значение функции sin(x) (но приближённо, 100%-я точность не гарантирована). Можно заключить, что используется формула Тейлора.
- "Hello World" (Скачать)
Программа, используя преообразователь регистров в символы (перифирийное устройство компьютера) создаёт строку "Hello World", а потом зачем-то начинает добавлять к регистру 13 единицу. Я долго пытался понять, зачем это сделано, но никаких весомых причин так и не нашёл: при "вырезанном" (удалённом из программы) финальном цикле результат не меняется.
- РАРИТЕТ! Факториал числа (Скачать)
Что странно, так это то, что, казалось бы, такая простая программа, как факториал, оказалась младше программы для расчёта "Деление атомов" :-)). Год создания - примерно 1984-1985, но точных данных, опять же, нет.
- Полный тест ДЗУ (Скачать)
Программа проверяет работу всех регистров и ДЗУ тремя способами: присваивание всем регистрам значения 1; присваивание всем регистрам значения 0; рандомизация всех регистров (0-1). Программа работает без остановки.
- РАРИТЕТ! Два поезда (Скачать)
Программа 1974 года. Оригинальное описание следующее: "Вычисление позиции поездов в реальном времени и расчёт времени, через сколько два поезда встретятся, будучи на одном пути.".
- Программа "Угадай число" (Скачать)
Одна из самых первых демонстраций "ИИ" на основе данной машины, хотя, конечно, полноценным интеллектом это назвать сложно. Программа загадывает число от 1 до 100, загаданное число записывается в регистр #1. В регистре 2 происходят попытки машины узнать, что за число было загадано (реализовано это довольно просто: возможное число мы увеличиваем на единицу, хотя авторы допускают замену на конструкцию вида RAND 2 1 100).
- РАРИТЕТ! "Э П И Ц Е Н Т Р" (Скачать)
Программа для многих расчётов в сфере баллистики, а конкретнее - в сфере баллистических ракет. Программа расчитывает время, максимальную высоту и дальность полёта ракеты, НЕ ИСПОЛЬЗУЯ ПРИ ЭТОМ НИ ОДНОГО ЦИКЛА. Также, примечательна тем, что имеет полноценное наименование - "Э П И Ц Е Н Т Р" (именно с пробелами).
- Сумма квадратов (Скачать)
Программа для нахождения суммы квадратов чисел от 1 до N (число "N" указывается в регистре #1). Результат выводится в регистр под номером 55.
- Расчёт дальности полёта снаряда (Скачать)
Программа расчитывает дальность полёта снаряда с учётом ускорения свободного падения (точного - 9,81 м/c^2). По сути, является монофункциональной версией программы "Э П И Ц Е Н Т Р".
- Числа Фибоначчи (Скачать)
Простая, но отличная в демонстрации для корректной работы ДЗУ программа, считающая последовательность Фибоначчи. Зачем-то использует пропускную операцию (SLEEP 0 в конце итерации).
- РАРИТЕТ! Движение тела (Скачать)
Программа моделирует движение тела на наклонной плоскости с учётом гравитации. Каждая итерация отображается с интервалом в одну секунду, вывод - регистры 9 (скорость на момент итерации) и 10 (прошедшее время в секундах с начала движения).
- РАРИТЕТ! Падение тела (Скачать)
Расчёт высоты тела во время падения с учётом ускорения свободного падения (9,81 м/c^2). Начальная высота тела вводится в регистр 1 (метры).
- Максимальная высота (Скачать)
Программа для расчёта максимальной высоты подъёма тела, брошенного под углом к горизонту. Использует классические формулы баллистики.
- Включение системы (Скачать)
Базовая программа инициализации системы БРЭМ. Проверяет работоспособность основных компонентов и подготавливает систему к работе.
- Туда-сюда (Скачать)
Программа, несколько аналогичная предыдущей ("Включение регистров 1-10"), но использует всего 3 регистра - 1, 18 и 35.
- Наибольший общий делитель (Скачать)
Реализация алгоритма Евклида для нахождения наибольшего общего делителя двух чисел. Числа вводятся в регистры 1 и 2.
- Тест генератора случайных чисел системы (Скачать)
Программа проверяет быстродействие системы при генерации случайных чисел. Каждую итерацию цикла в каждый из 162-х регистров записывается случайное число (0 или 1). Перерыв между итерациями - 0.5 секунды.
- Включение всех регистров (Скачать)
Поочередно включает (присваивает значение 1) все регистры (1-162).
- Вычисление числа "Пи" (Скачать)
Программа для вычисления числа "Пи" с заданной точностью. Использует метод Монте-Карло для аппроксимации.
- РАРИТЕТ! Тест отрисовки (Скачать)
Программа, проверяющая работу системы отрисовки символов для БРЭМ-П, где начала поддерживаться команда "DRAW".
- Сумма чисел до N (Скачать)
Программа считает сумму чисел до числа N (регистр 1), занося текущую сумму и весь результат в регистр #3. Используются всего 4 регистра!
- Перемножение всех регистров (Скачать)
Программа постоянно перемножает между собой все регистры БРЭМ, создавая огромное количество информации в них и заполняя всю память. Управляющий регистр - 162, для аварийной остановки программы просто обнулите его значение.
|