vak: (Знайка)
[personal profile] vak
Прелестный "проект выходного дня".
  • ratforth.asm - Форт, написанный на ассемблере для простейшего выдуманного процессора.
  • RatAsm.cpp - Ассемблер для этого процессора, превращающий исходник в бинарную программу. 360 строчек на Си++.
  • RatExe.cpp - Симулятор процессора, выполняющий бинарную программу. 460 строчек на Си++.
Компилируем, запускаем:
$ g++ RatAsm.cpp -o RatAsm

$ g++ RatExe.cpp -o RatExe

$ ./RatAsm ratforth.asm ratforth.bin

$ ./RatExe ratforth.bin
Forth Model T 1.0

Ok
3 5 * .
15
Ok
_
Исходный авторский репозиторий: github.com/VasylTsv/ForthModelT

Я маленько подрихтовал, чтобы завелось на линуксе и маке: github.com/sergev/ForthModelT

Date: 2025-01-15 14:40 (UTC)
x86128: (Default)
From: [personal profile] x86128
монументально!

Date: 2025-01-15 17:37 (UTC)
spamsink: (Default)
From: [personal profile] spamsink
Компактно. Интересно, сколько строк на Паскале получится вместо ассемблера. :)