LC-3 VM
Write your own virtual machine for the LC-3 computer!
The documentation and source are generated from the .lit file using srcweave. If you don't want to go through the trouble of setting it up, your contributions are welcome. Just make your edits the .lit file, and we can regenerate it for you. Our VM will simulate a fictional computer called the LC-3. The LC-3 is popular for teaching university students how to program in assembly language. It has a simplified instruction set compared to x86, but contains all the main ideas used in modern CPUs. First, we need to simulate the essential hardware components of the machine. Try to understand what each component is, but don’t worry right now if you are unsure of how it fits into the larger picture. Start by creating a C file. A register is a slot for storing a single value on the CPU. Registers are like the “workbench” of the CPU. For the CPU to work with a piece of data, it has to be in one of the registers.