
Computation structures
by Stephen A. Ward · first published 1990
15mentions
8recommended by
12HN commenters
2010–2026first – last mentioned
67% recommend33% neutral
Why HN recommends it
Covers digital design and computer architecture from the ground up, including microcoding and a pedagogical processor. It serves as a clear companion to MIT's 6.004 course for students and working engineers.
Summarised by Claude from recommending comments
Affiliate links. As an Amazon Associate I earn from qualifying purchases.






Here’s a great book explaining microprogramming from ground up: https://www.amazon.com/Computation-Structures-Optical-Electr... Easy to find a free pdf
on “80386 Microcode Disassembled” ↗…why you'd pick a particular school of micro control flow as a microcode engine implementer? For a comprehensive answer, a good vintage introductory digital design textbook is Ward and Halstead's 1989 Computation Structures, from the "peak CISC" era! [1] There, the second (vertical) type is often used for highly complex instructions/fancy addressing modes, that you might want to implement with some sort of procedure abstraction,…
on “Microcode inside the Intel 8087 floating-point chip: register exchange” ↗…Non-fiction (technical): * Code Complete, 2nd Edition by Steve McConnell. I can't say enough good things about this. I have kept referring to it in the months since I read it for the first time. * Computation Structures by Stephen A. Ward. I have read most of this one; it's a good reference for understanding computers at various levels of abstraction. * Simulation and its Discontents by Sherry Turkle * Scientific Computation:…
on “Ask HN: Books you read in 2016?” ↗…already know everything in Brooks, but Peopleware is something you should reread annually). To that list I might add: On Lisp -- Javascript: The Good Parts -- Pattern Oriented Software Design #2[1] -- Computation Structures -- Computer Architecture (Hennesy and Patterson) -- C Interfaces and Implementations -- The Visual Display Of Quantitative Information -- Windows Internals[2] [1] ... this book was wildly* ahead of its…
on “What is the single most influential book every programmer should read?” ↗…practice design technique called JSP (although the course is in Java, all the design techniques are universal, this JSP stands for "Jackson Structured Programming"). Computer Architecture: the MIT combo "Computation Structures" (on edx) and "Computer System Engineering" (on ocw and youtube) will teach you systems design all the way from atoms to the whole internet. Great instructors. Algorithms and Data Structures: again from…
on “Ask HN: How Sound Is the “Teach Yourself CS” Learning Resource?” ↗Wow, Computation Structures looks like an excellent book; thanks for the reference. I think having Lisp in Small Pieces and SICP is reasonable. Lisp in Small Pieces dives pretty deep, but doesn't cover anything comparable to what…
on “What is the single most influential book every programmer should read?” ↗Highly recommend these references: 1) Computer Organization and Design: The Hardware/Software Interface by David Patterson and John Hennessy 2) Computation Structures course and associated course material from MIT OCW, checkout links [1], [2] and [3] [1] https://computationstructures.org/ [2] OCW MIT 6.004 : https://ocw.mit.edu/courses/electrical-engineering-and-compu...…
on “Ask HN: What book/s do you recommend for learning computer architecture?” ↗For learning below courses and books are very helpful: 1) Online courses: Computation Structures: Parts 1, 2 and 3 - all course materials available on EdX MIT as well as MIT OCW 2) Books: a) Computer Systems: A Programmers Perspective and b) Computer Organization: Hardware/Software Interface 3)…
on “Ask HN: How to get into the chip industry?” ↗…resources – ye olde digital design books are really fun to learn how (sequenced) microcoding was seen as one of the highest-level tools in the toolkit of digital design in general up to the early/mid 80s: – "Computation Structures", an old MIT course book, which uses a pedagogical processor similar to a microcoded PDP-11 or a 68k, to illustrate microcoding as the highest level of digital design – the processor they implement used…
on “A Brief History of Microprogramming (2022)” ↗So, I've read Computation Structures. And agreed, an absolutely fantastic text. [0] However, my question is kind of orthogonal to vertical versus horizontal microcode. As a counter example I'd point to the microcode format of the system…
on “Microcode inside the Intel 8087 floating-point chip: register exchange” ↗Re the complaints about how idealized the hardware chapters are: http://www.amazon.com/Computation-Structures-Electrical-Engi... also covers the full stack from transistors to operating systems, but with much more depth on the lower levels. It's pretty old, though.
on “Building a Modern Computer from First Principles” ↗I took the MITx MOOC version of MIT's 6.004 (Computation Structures) class. In that class students design and implement in logic gate level simulator a 32-bit RISC CPU. I was going to try to build it out of 74' series logic as a summer project last summer. Then I did…
on “32-bit homebrew CPU using 74' series logic” ↗…to add to the list below that would be beneficial? Introduction to Computer Science and Programming -- MIT Open CourseWare Structure and Interpretation of Computer Programming -- MIT Open CourseWare Computation Structures -- MIT Open CourseWare Introduction to Algos -- MIT Open CourseWare Data Structures and Algorithms With Object Oriented Design Patterns -- Book
on “Ask HN: Learning Python, Looking for book or class on software construction.” ↗You are welcome. Please note that the MIT 6.828 is really tough but will turn you into a bad-ass C hacker. It relies on MIT 6.004 - Computation Structures [1] (has edx mooc [2,3,4]) and MIT 6.033 - Computer Systems Engineering [5] as pre-requisites given that they teach you the fundamentals of computer architecture (digital abstraction, gates, circuits,…
on “How to create an OS from scratch – tutorial” ↗…first 10-15 pages in Chapter 1 of Milman & Halkias (PDFs widely circulating) are such a clear read, if something still doesn't click. For the deep dive details I mentioned in parent post, follow 6.004 Computation Structures' first few lectures. Nand2Tetris lectures also cover how circuits are built from these basic units to make functional units of computer (Bonus: they used to have a simulation software with the book which…
on “How do transistors work, anyway?” ↗