Intel 8086 instructions decoder. Takes a 8086 binary program and inputs its as an assembly representation. Basically a disassembler. Currently supports the following instructions in both 8-bit and 16-bit formats:
MOV
- register to register, register to memory, memory to registerADD
- immediate to accumulator, register to memory, memory to register, register to registerCMP
- immediate with accumulatorSUB
- immediate from accumulator, register from memory, memory from register, register to registerJUMP
- including je, jz, jl, jnge, jle, jng, jb, jnae and others.LOOP
- including loopz, loopnz and others.
- UNIX system - MacOS, Linux
# you can take assembled program from /resources folder
# and supply it to the standard input of the program
cat /resources/<program> | vm8086
# assembly represenation will be printed to standard output