Abhinav Sarkar: An LC-3 Disassembler in Haskell
LC-3 assembly is an educational programming language. It is simple enough that complex programs can be written directly in it without needing a compiler, and thus it is often used in teaching assembly. An LC-3 textual assembly program is compiled to a binary object file by an assembler, and then executed by a virtual machine. Writing a virtual machine for LC-3 is a fun little exercise. However, in this post, we implement a disassembler for compiled LC-3 binaries back to textual assembly programs.
This post was originally published on abhinavsarkar.net.
Contents
Introduction to LC-3
Problem in…
The skinny
The skinny isn't ready yet — notes appear once the transcript is processed.