Fetch, Execute, Repeat

September 16, 2021

Today I’m working on implementing a mini VM in golang. Here’s a dump of links I’m using for reference and education:

The machine I’m implementing supports a very small instruction set:

load    
add     
store   
halt    
ddi     
subi    
jump    
beqz    

It’s very enlightening to be working with a perpetually running (albeit simulated) CPU clock. It’s a completely different mental model to what I could perceive from the high level I’m used to working with. Absolutely incredible resource that we’re using for that part of the course is CS:APP. It’s very easy to approach and super readable. A great text in computer science.


Written by Daniel Kaczmarczyk, a software engineer and educator. you can find me on twitter or email me at daniel.kaczmarczyk@hey.com

a pale blue and yellow circle