This is an implementation of a Virtual Machine for the LC-3 computer, written in Go.
It was inspired by Justin Meiners' and Ryan Pendleton's article.
It can run implementations of programs such as:
To build the LC-3 VM executable, run the following command from the project root:
go build -o lc3vm ./cmd/lc3vmThis will create an executable named lc3vm in the project root directory.
To run an LC-3 object file, use the lc3vm executable followed by the path to the object file:
./lc3vm <path_to_object_file>For example, to run the hello-world.obj example:
./lc3vm testdata/hello-world.objTo run the test suite for the LC-3 VM, execute the following command from the project root:
go test -v ./...