Randal E. Bryant & David R. O’Hallaron5/5 20 January 2026

Computer Systems: A Programmer's Perspective

The book I hand to anyone who says they want to get into low-level programming.

Find the book

I taught C for a couple of years and kept using this book. It does not let you treat the machine as an abstraction. When you compile something, you can read the assembly produced and learned from it

What stuck #

Speeding up a matrix multiply several times over by changing the loop order, without touching the arithmetic.