Учебная задачка
2020-08-30 00:45Год назад для проекта МЭСМ-6 я сделал набор тестов, покрывающих каждую машинную команду. Исходники и бинарники тестов лежат на Гитхабе.
Задачка:
Это я язык Rust изучаю.
Задачка:
- Написать простой симулятор БЭСМ-6 на языке Rust.
- Симулятор должен проходить вышеуказанные тесты.
- Реализовать только машинные команды режима пользователя.
- Можно подсматривать в код симулятора SIMH, как заведомо правильный.
Это я язык Rust изучаю.

no subject
Date: 2020-08-30 08:43 (UTC)Классная задача; и язык подходящий.
no subject
Date: 2020-08-30 08:46 (UTC)Не перебор с точки зрения трудоёмкости?
Или есть какая-то фишка, которая позволяет это всё сделать качественно быстрее?
no subject
Date: 2020-08-30 10:08 (UTC)no subject
Date: 2020-08-30 18:53 (UTC)no subject
Date: 2020-08-31 06:49 (UTC)В Rust всякие плюшки есть типа popcnt ( которые LLVMом потом в соотв. инструкции процессора преобразуются) и т.д.
Должен получиться быстрый эмулятор.
Делал на питоне, но там уткнулся в длинную арифметику и мне не понравились костыли как делаются всякие сдвиги >>> (их там просто нет) по итогу забросил пока.
Лелею мысль сделать на Java(Kotlin) типа спектрума с процессором mesm6... но пока нет времени.
no subject
Date: 2020-09-01 06:39 (UTC)Можно и на Питоне сделать симулятор, но это будет скорее прототип, чем серьёзное изделие.
Kotlin тащит за собой всю Джаву, а это уж очень громоздко...