4917 - Machine Code for Kids
4917 - Machine Code for Kids
This is a card game for teaching kids how to read and write machine code, using a simple 4 bit computer with very simple instruction set, 2 general purpose registers and only 16 cells of addressable memory. Just to manage your expectations, those are basically 54 tiny programs that I spent 2 months writing, in the guide there are examples how to play, but I mainly just walk through the code with my daughter during lunch or in the bus.
[HOW TO PLAY]
[START THE DEBUGGER]
The cards have 54 small programs, illustrating various low level concepts such as:
- fetch execute cycle
- instruction arguments
- variables
- pointers
- self modifying programs
- self corrupting programs
- self referencing code
- integer overflows and underflows
- control flow and addressable memory
- code is data
- data ia code
- debugging
The game is based on Richard Buckland's 4 bit computer
Note: When you play with your kid, install x64dbg and show them the actual machine code of a program as it is being executed. Another thing that is really helpful is if you write a small C program that does somewhat the same thing as a specific card to illustrate it better.