Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Book Overview & Buying Computer Architecture with Python and ARM
  • Table Of Contents Toc
Computer Architecture with Python and ARM

Computer Architecture with Python and ARM

By : Alan Clements
4.6 (7)
close
close
Computer Architecture with Python and ARM

Computer Architecture with Python and ARM

4.6 (7)
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)
close
close
1
Part 1: Using Python to Simulate a Computer
Lock Free Chapter
2
Chapter 1: From Finite State Machines to Computers
10
Part 2: Using Raspberry Pi to Study a Real Computer Architecture

Input validation

In this section, I will introduce the notion of data validation. Historically, some of the major errors involving computers have been caused by a failure to check input data. TC1 doesn’t perform source data checking; you can write ADDL R1,R2,10 or ADDL z1,z2,10 with the same result. Why? Because when the assembler sees ADDL, it looks for three parameters. It takes the first parameter, let’s call this p1, and reads the register number by regnum = int(p1[1:]). Only the second and successive characters of p1 are recorded, and the “R” is ignored. You can write R1 or even ?1. This makes programming in assembly language easier; you can use any letter you want to represent a register. On the other hand, it encourages poor programming techniques and increases the dangers associated with mistyped input.

Validating data

Since the TC1 assembler doesn’t perform error-checking on the input, if you make an error, it’s likely that the...

CONTINUE READING
83
Tech Concepts
36
Programming languages
73
Tech Tools
Icon Unlimited access to the largest independent learning library in tech of over 8,000 expert-authored tech books and videos.
Icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Icon 50+ new titles added per month and exclusive early access to books as they are being written.
Computer Architecture with Python and ARM
notes
bookmark Notes and Bookmarks search Search in title playlist Add to playlist download Download options font-size Font size

Change the font size

margin-width Margin width

Change margin width

day-mode Day/Sepia/Night Modes

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Confirmation

Modal Close icon
claim successful

Buy this book with your credits?

Modal Close icon
Are you sure you want to buy this book with one of your credits?
Close
YES, BUY

Submit Your Feedback

Modal Close icon
Modal Close icon
Modal Close icon