Assembly Instruction Visualiser
8086 subset. Assemble, simulate, and understand what each instruction does to registers, flags, and memory.
Program
Supported mnemonics: MOV reg, imm16, ADD|SUB reg, imm16, INC|DEC reg, CMP reg, imm16, JMP label, JZ label, JNZ label, NOP, HLT. Registers: AX, BX, CX, DX, SI, DI, BP, SP. Labels end with a colon.
Assembled output
Listing
| Addr | Bytes | Instruction |
|---|---|---|
Hex dump
Run controls
Step executes the current instruction at IP. Run executes up to a limit or until HLT.
What you are seeing
Each instruction has an opcode and operands. The assembler converts your mnemonics into bytes. The simulator then executes those bytes, updating registers and flags. This helps you see how simple arithmetic and loops work at the lowest level.
Supported opcodes
- MOV r16, imm16 uses
B8+rwfollowed by the immediate. - ADD r16, imm16 uses
05for AX or81 /0for other registers. - SUB r16, imm16 uses
2Dfor AX or81 /5for other registers. - INC|DEC r16 uses
40+rwand48+rw. - CMP r16, imm16 uses
3Dfor AX or81 /7for others. - JMP rel uses
E9near relative. - JZ/JNZ use short jumps
74/75where possible, else near relative0F 84/0F 85. - NOP
90, HLTF4.
This subset keeps the visuals clean while remaining faithful to 8086 behaviour for these instructions.