This hands-on tutorial is a broad examination of how a modern computer
works. Classroom tested for over a decade, it gives readers a firm
understanding of how computers do what they do, covering essentials like
data storage, logic gates and transistors, data types, the CPU,
assembly, and machine code.
Introduction to Computer Organization gives programmers a practical
understanding of what happens in a computer when you execute your code.
You may never have to write x86-64 assembly language or design hardware
yourself, but knowing how the hardware and software works will give you
greater control and confidence over your coding decisions. We start with
high level fundamental concepts like memory organization, binary logic,
and data types and then explore how they are implemented at the assembly
language level.
The goal isn't to make you an assembly programmer, but to help you
comprehend what happens behind the scenes between running your program
and seeing "Hello World" displayed on the screen. Classroom-tested for
over a decade, this book will demystify topics like:
How to translate a high-level language code into assembly language
How the operating system manages hardware resources with exceptions and
interrupts
How data is encoded in memory
How hardware switches handle decimal data
How program code gets transformed into machine code the computer
understands
How pieces of hardware like the CPU, input/output, and memory interact
to make the entire system work
Author Robert Plantz takes a practical approach to the material,
providing examples and exercises on every page, without sacrificing
technical details. Learning how to think like a computer will help you
write better programs, in any language, even if you never look at
another line of assembly code again.