How Computers Really Work

A Hands-On Guide to the Inner Workings of the Machine

Look inside
An approachable, hands-on guide to understanding how computers work, from low-level circuits to high-level code.

How Computers Really Work is a hands-on guide to the computing ecosystem: everything from circuits to memory and clock signals, machine code, programming languages, operating systems, and the internet.

But you won't just read about these concepts, you'll test your knowledge with exercises, and practice what you learn with 41 optional hands-on projects. Build digital circuits, craft a guessing game, convert decimal numbers to binary, examine virtual memory usage, run your own web server, and more.

Explore concepts like how to:
  • Think like a software engineer as you use data to describe a real world concept
  • Use Ohm's and Kirchhoff's laws to analyze an electrical circuit
  • Think like a computer as you practice binary addition and execute a program in your mind, step-by-step

  • The book's projects will have you translate your learning into action, as you:
  • Learn how to use a multimeter to measure resistance, current, and voltage
  • Build a half adder to see how logical operations in hardware can be combined to perform useful functions
  • Write a program in assembly language, then examine the resulting machine code
  • Learn to use a debugger, disassemble code, and hack a program to change its behavior without changing the source code
  • Use a port scanner to see which internet ports your computer has open
  • Run your own server and get a solid crash course on how the web works

  • And since a picture is worth a thousand bytes, chapters are filled with detailed diagrams and illustrations to help clarify technical complexities.

    Requirements: The projects require a variety of hardware - electronics projects need a breadboard, power supply, and various circuit components; software projects are performed on a Raspberry Pi. Appendix B contains a complete list. Even if you skip the projects, the book's major concepts are clearly presented in the main text.
    Matthew Justice, a software engineer, spent 17 years at Microsoft where his work included debugging the Windows kernel, developing automated fixes, and leading a team of engineers building diagnostic tools and services. He has worked on everything from low-level software to high-level web applications.
    Introduction
    Chapter 1: Computing Concepts
    Chapter 2: Binary in Action
    Chapter 3: Electrical Circuits
    Chapter 4: Digital Circuits
    Chapter 5: Math with Digital Circuits
    Chapter 6: Memory and Clock Signals
    Chapter 7: Computer Hardware
    Chapter 8: Machine Code and Assembly Language
    Chapter 9: High Level Programming
    Chapter 10: Operating Systems
    Chapter 11: The Internet
    Chapter 12: The World Wide Web
    Chapter 13: Modern Computing
    Appendix A: Answers to Exercises
    Appendix B: Setting Up
    "Much more understandable than most books of this type, even when the author delves deeply into machine code, programming languages, operating systems and the internet. He details 41 hands-on projects, including games, running a web server, and so on. It's just right for the would-be software engineer."
    —Joy Schwabach, Arkansas Democrat Gazette's On Computers

    About

    An approachable, hands-on guide to understanding how computers work, from low-level circuits to high-level code.

    How Computers Really Work is a hands-on guide to the computing ecosystem: everything from circuits to memory and clock signals, machine code, programming languages, operating systems, and the internet.

    But you won't just read about these concepts, you'll test your knowledge with exercises, and practice what you learn with 41 optional hands-on projects. Build digital circuits, craft a guessing game, convert decimal numbers to binary, examine virtual memory usage, run your own web server, and more.

    Explore concepts like how to:
  • Think like a software engineer as you use data to describe a real world concept
  • Use Ohm's and Kirchhoff's laws to analyze an electrical circuit
  • Think like a computer as you practice binary addition and execute a program in your mind, step-by-step

  • The book's projects will have you translate your learning into action, as you:
  • Learn how to use a multimeter to measure resistance, current, and voltage
  • Build a half adder to see how logical operations in hardware can be combined to perform useful functions
  • Write a program in assembly language, then examine the resulting machine code
  • Learn to use a debugger, disassemble code, and hack a program to change its behavior without changing the source code
  • Use a port scanner to see which internet ports your computer has open
  • Run your own server and get a solid crash course on how the web works

  • And since a picture is worth a thousand bytes, chapters are filled with detailed diagrams and illustrations to help clarify technical complexities.

    Requirements: The projects require a variety of hardware - electronics projects need a breadboard, power supply, and various circuit components; software projects are performed on a Raspberry Pi. Appendix B contains a complete list. Even if you skip the projects, the book's major concepts are clearly presented in the main text.

    Author

    Matthew Justice, a software engineer, spent 17 years at Microsoft where his work included debugging the Windows kernel, developing automated fixes, and leading a team of engineers building diagnostic tools and services. He has worked on everything from low-level software to high-level web applications.

    Table of Contents

    Introduction
    Chapter 1: Computing Concepts
    Chapter 2: Binary in Action
    Chapter 3: Electrical Circuits
    Chapter 4: Digital Circuits
    Chapter 5: Math with Digital Circuits
    Chapter 6: Memory and Clock Signals
    Chapter 7: Computer Hardware
    Chapter 8: Machine Code and Assembly Language
    Chapter 9: High Level Programming
    Chapter 10: Operating Systems
    Chapter 11: The Internet
    Chapter 12: The World Wide Web
    Chapter 13: Modern Computing
    Appendix A: Answers to Exercises
    Appendix B: Setting Up

    Praise

    "Much more understandable than most books of this type, even when the author delves deeply into machine code, programming languages, operating systems and the internet. He details 41 hands-on projects, including games, running a web server, and so on. It's just right for the would-be software engineer."
    —Joy Schwabach, Arkansas Democrat Gazette's On Computers

    Books for Asian American and Native Hawaiian/Pacific Islander Heritage Month

    Every May we celebrate the rich history and culture of Asian Americans, Native Hawaiians, and Pacific Islanders. Browse a curated selection of fiction and nonfiction books by AANHPI creators that we think your students will love. Find our collections of titles here: Middle School High School

    Read more

    PRH Education High School Collections

    All reading communities should contain protected time for the sake of reading. Independent reading practices emphasize the process of making meaning through reading, not an end product. The school culture (teachers, administration, etc.) should affirm this daily practice time as inherently important instructional time for all readers. (NCTE, 2019)   The Penguin Random House High

    Read more

    PRH Education Translanguaging Collections

    Translanguaging is a communicative practice of bilinguals and multilinguals, that is, it is a practice whereby bilinguals and multilinguals use their entire linguistic repertoire to communicate and make meaning (García, 2009; García, Ibarra Johnson, & Seltzer, 2017)   It is through that lens that we have partnered with teacher educators and bilingual education experts, Drs.

    Read more

    PRH Education Classroom Libraries

    “Books are a students’ passport to entering and actively participating in a global society with the empathy, compassion, and knowledge it takes to become the problem solvers the world needs.” –Laura Robb   Research shows that reading and literacy directly impacts students’ academic success and personal growth. To help promote the importance of daily independent

    Read more