Introduction to Computer Organization: ARM	placeholder cover

Introduction to Computer Organization: ARM

by Robert G. Plantz
October 2024, 512 pp.
Use coupon code PREORDER to get 25% off!

All high-level languages are ultimately translated into machine instructions that control a computer's hardware. Introduction to Computer Organization: ARM reveals exactly how that hardware works "under the hood." Written for anyone familiar with basic programming concepts, the reader is taken through the machine's architecture from the bottom up and the software on down—with a special focus on the ARM instruction set commonly found in smartphones, laptops, and tablets.

Beginning with an exploration of modern computing's mathematical foundations—including the binary system and Boolean algebra—the book introduces hardware components such as circuits, CPU, and memory. Later chapters discuss how software controls hardware, providing an in-depth look at the basic programming constructs in low-level languages like C and C++. Finally, readers are shown how the computer's compiler translates code into assembly language that can directly access the instruction set architecture.

Author Bio 

Robert G. Plantz was a professor at Sonoma State for 21 years, teaching a variety of core computing classes. He started his career designing electronics for the horizon scanners on the Gemini spacecraft and Apollo Lunar Module. After that, he got his PhD in electrical engineering at UC Berkeley, and went on to work as a software engineer for eight years before becoming an educator.

Table of contents 

1. Setting the Stage
2. Data Storage Formats
3. Computer Arithmetic
4. Boolean Algebra
5. Logic Gates
6. Combinational Logic Circuits
7. Sequential Logic Circuits

8. Memory
9. Central Processing Unit (CPU)
10. Programming in Assembly Language
11. Inside the main Function
12. Instruction Details
13. Control Flow Constructs
14. Inside Subfunctions
15. Special Uses of Subfunctions
16. Computing with Bitwise Logic, Multiplication, and Division Instructions
17. Data Structures
18. Object-Oriented Programming
19. Fractional Numbers
20. Input/Output
21. General Purpose Input/Output (GIPO) Device
22. Interrupts and Exceptions

The chapters in red are included in this Early Access PDF.