This is the code repository for Practical Computer Architecture with Python and ARM, published by Packt.
An introductory guide for enthusiasts and students to learn how computers work and program their own
This comprehensive guide offers a unique and immersive learning experience by combining Python programming with ARM architecture. Starting with an introduction to computer architecture and the flow of data within a computer system, you’ll progress to building your own interpreter using Python. You’ll see how this foundation enables the simulation of computer operations and learn ways to enhance a simulator by adding new instructions and displaying improved results.
This book covers the following exciting features:
- Master the core principles of computer architecture
- Understand the role of registers, memory, and data flow in computers
- Discover how to design and implement a computer simulator using Python
- Simulate and execute assembly language programs on the simulator
- Enhance the simulator using new instructions for improved output
- Analyze complex computer instructions for deeper architectural understanding
- Explore the ARM instruction set and data processing on the Raspberry Pi
- Develop proficiency in writing, assembling, and running ARM code on the Raspberry Pi
If you feel this book is for you, get your copy today!
All of the code is organized into folders. For example, Chapter02.
The code will look like the following:
for i in range (0,6): # Repeat six times
Following is what you need for this book: This book is for university students studying computer science, particularly those enrolled in a computer architecture module. With its practical approach and succinct explanations, it is also suitable for hobbyists, enthusiasts, and self-learners seeking a deeper understanding of computer systems. The book assumes foundational knowledge of number bases, binary arithmetic, and Boolean logic concepts. While it primarily caters to the computer science field, this book is less geared toward electrical or electronics engineering.
With the following software and hardware list you can run all code files present in the book (Chapter 1-12).
Chapter | Software required | OS required |
---|---|---|
1-8 | Python | Windows, Mac OS X, and Linux (Any) |
9-12 | Raspberry Pi 3 Model A+/ Raspberry Pi 4 Model B |
-
Computer Programming for Absolute Beginners [Packt] [Amazon]
-
Embedded Systems Architecture - Second Edition [Packt] [Amazon]
Dr. Alan Clements is a retired professor of computer science from the University of Teesside, UK. He is an esteemed author of major texts on computer hardware and architecture, recognized for his contributions to computer science education. With a Ph.D. in Electronics and a distinguished career, Dr. Clements has made significant advancements in microcomputer design and microprocessor systems. He has received prestigious accolades such as the 2007 Taylor Booth Award for CS Education and has been an active member of the Computer Society. As a Fellow of the IEEE, Dr. Clements has played a pivotal role in promoting excellence in computer architecture education and chaired the IEEE's "Computer Society International Design Competition" for eight years.