Book Image

Computer Architecture with Python and ARM

By : Alan Clements
Book Image

Computer Architecture with Python and ARM

By: Alan Clements

Overview of this book

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. As you advance, you’ll explore the TC1 Assembler and Simulator Program to gain insights into instruction analysis and explore practical examples of simulators. This will help you build essential skills in understanding complex computer instructions, strengthening your grasp of computer architecture. Moreover, you’ll be introduced to the Raspberry Pi operating system, preparing you to delve into the detailed language of the ARM computer. This includes exploring the ARM instruction set architecture, data-processing instructions, subroutines, and the stack. With clear explanations, practical examples, and coding exercises, this resource will enable you to design and construct your own computer simulator, simulate assembly language programs, and leverage the Raspberry Pi for ARM programming.
Table of Contents (18 chapters)
1
Part 1: Using Python to Simulate a Computer
Free Chapter
2
Chapter 1: From Finite State Machines to Computers
10
Part 2: Using Raspberry Pi to Study a Real Computer Architecture

Technical requirements

This chapter is based on the Raspberry Pi 4. The software we use should also be compatible with the earlier 3B model. In order to use Raspberry Pi, you will need the following:

  • Raspberry Pi 4 (available with 2 GB, 4 GB, and 8 GB DRAM)
  • Raspberry Pi 5V 3A power supply
  • USB mouse
  • USB keyboard
  • Wi-Fi internet connection
  • Video display with micro HDMI lead
  • 32 GB Class 10 micro SD card pre-loaded with NOOBS (see the note at the end of this section)

All these items are available on Amazon or from Raspberry Pi suppliers. You can get the operating system pre-loaded onto a micro SD card, or download the operating system and preload it onto your own card using a PC or Mac. The Raspberry Pi web page at https://www.raspberrypi.org/ provides full details about this computer including getting started, setting up, and loading the operating system on your own card.

The text was written using NOOBS (New Out Of the Box Software). The Raspberry...