Basic Pseudo-Assembler implementation.
pasm code.pasm
Current version is very picky about input - operations and their arguments should be separated with one and only space, if instruction takes no aguments, an endline character (\n
) should follow it.
The application plays the role of both source (.pasm
files) interpreter as well as byte-code interpreter.
Bytecode interpreter is set up as a virtual machine (wanna be virtual machine actually). It's architecture is simple:
- two 32-bit general-purpose registers (
R0
,R1
); - 32-bit instruction pointer register (
IP
); - single bit flag register (
F
).
Consult source code for details.