Рет қаралды 1,728
The assembler I wrote from scratch is a pretty convenient tool to build programs for my homebrew CPU. Manually computing address offsets for jump instructions isn't fun though. In this video, I extend my assembler to support the usual syntax for declaring jump labels and using them in actual jump instructions.
This video series explores the concepts and techniques that make modern computer processors so incredibly fast and powerful. I build my very own 8-bit processor from individual logic gates and gradually evolve it to become a superscalar out-of-order machine. Along the way, we take a deep dive into contemporary computer architecture in a hands-on fashion and rediscover some of the foundations of modern computing.
Previous Video: • Adding Conditional Mov...
Series Playlist: • Build a Superscalar CPU
Assembler Playlist: • Assembler from Scratch
GitHub Repository: github.com/fabianschuiki/supe...
- Assembly Language: en.wikipedia.org/wiki/Assembl...
00:00 - Intro
02:16 - Label Declarations
05:56 - Labels As Operands
10:10 - Encoding Labels as Jump Offset
12:42 - Computing Label Offsets
14:39 - Resolving Label Names
22:58 - Using Labels in Programs
24:41 - Outro
#assembler #compiler #homebrew #computer