Skip to content

countgizmo/computer-enhance

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

85 Commits
 
 
 
 
 
 

Repository files navigation

Compute Enhance (The Homework)

8086 Simulator

My silly simulator can:

  • disassemble a subset of 8086 instructions from binary;
  • simulate storing to and reading from (simulated) registers;
  • run arithmetic operations (add, sub, cmp);
  • IP register and conditional jumps;
  • simulate 64K of memory.
❯ zig run simulator.zig -- asm/listing_46
; FILE: asm/listing_46
bits 16

mov bx, 61443
mov cx, 3841
sub bx, cx
mov sp, 998
mov bp, 999
cmp bp, sp
add bp, 1027
sub bp, 2026

=== REGISTERS ===
ax: 0 (0x0)
bx: -7934 (0x-1EFE)
cx: 3841 (0xF01)
dx: 0 (0x0)
sp: 998 (0x3E6)
bp: 0 (0x0)
si: 0 (0x0)
di: 0 (0x0)
=================

=== FLAGS ===
zf: 1
sf: 0
=================

My CPU can put pixel data into memory.

image

Haversine

Researching performance aware programming using Haversine Distance calculations.

About

Building 8086 simulator a step at a time

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published