Synopses & Reviews
Synopsis
From Amps to Apps: How Computers Work is an approachable, hands-on guide to understanding how computers work, from low-level circuits to modern software. From Amps to Apps: How Computers Work takes an informal approach to topics often reserved for textbooks. Each chapter covers one foundational aspect of computing. Exercises and hands-on activities throughout are designed to help the reader learn. Exercises mostly involve mental problem solving, while hands-on activities require the reader to actually try various aspects of computing: building a circuit, writing software, and so forth.
Readers will learn about electrical circuits, learn how to read a circuit diagram, and build a working circuit. They'll learn how computer hardware like processors, memory, and input/output work and fit together; how low-level machine code runs on a processor, and how to examine the machine code of software running on a computer. They'll gain an understanding of the differences between programming languages like C and Python; examine operating systems; use tools to explore their local network and the Internet, and build a simple web page. The book's primary goal is to give the reader a broad understanding of how computers work; to offer a big picture view of computing and the foundational information needed to dig deeper into topics that interest them.
Synopsis
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 - from circuits, to memory and clock signals, machine code, programming languages, operating systems, and the internet. You won't just read about these concepts, you'll test your knowledge with exercises, and practice what you learn with 41 hands-on projects that bring the information to life. You'll 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 take a real world concept and describe it with data.
- Use Ohm's and Kirchhoff's laws to analyze the properties of 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 41 projects will have you translate your learning into action, as you:
- Build and measure a circuit: Learn the fundamentals of working with circuits and 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.