Пользователь GitHub под ником lucas-streanga опубликовал интересный проект. Он создал виртуальный ARM-процессор, используя для этого язык С++.
Каждый раз интересно наблюдать, как с помощью уже легендарных языков создаются всё новые интересные проекты / Источник: Unsplash
Автор проекта заявляет, что с помощью его разработки все желающие могут писать и тестировать собственный машинный код. Для этого программа считывает данные из внешнего файла, который и содержит в себе всё необходимое в 32-битном формате.
Пример программы для виртуального процессора
00001000000010000000001111111111 # перемещает 16384 в register 0
00001010000000000000000000000000 # печатает r0
00000000000001000000000000000000 # добавляет r0 и r0 и размещает в r0 +
# устанавливает flags
00001010000000000000000000000000 # печатает r0
00001000010010111000000000001000 # зацикливает до тех пор, пока не случится перенос
*
!
По словам разработчика, его проект работает достаточно стабильно. Изучить саму программу, а также инструкции к ней можно на GitHub-аккаунте lucas-streanga, пройдя по ссылке.
Источник: GitHub / lucas-streanga
Источник: