Skip to content

idexter/golang-lc3-vm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LC-3 Virtual Machine

build golangci-lint Go Report Card codecov

This is my implementation of "Little Computer 3" virtual machine. I was made it to get better understanding about what is going on inside a computer and better understand how programming languages work.

This project based on: Write your Own Virtual Machine article. You can also find some basics about LC3 on Wikipedia.

In lc3-isa.pdf file within this repository you can find The Instruction Set Architecture (ISA) of the LC-3. Inside apps directory you can find some applications which can be run by this Virtual Machine.

Build

  • To run linter make lint
  • To build project just run make build
  • To run tests make test
  • To remove build artifacts make clean

Run

It's easy to run any application. Just specify application object file as a first argument to a binary.

./golang-lc3-vm ./apps/hello-world.obj
./golang-lc3-vm ./apps/rogue.obj

Alternative "Go" implementations

Useful links

About

My implementation of "Little Computer 3" (LC-3) virtual machine.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages