Lecture 1

ARM assembly and machine code 

Data Processing Instructions and Machine Code

There are three types of instructions:

  1. Data processing instructions
  2. Loads from and stores to memory
  3. Conditional branches to new program locations

In other words, you need to fetch or write data, compute it and decide the control flow or logic. That’s why we have these three types of instructions.

The first type is data processing

This in one example of (add r1,r0,r2)

What if we want to use immediate?

Here is the example

Before the data is being processed, there is a shifting operation before ALU

Loading from memory or writing to memory is common. So I do not repeat it again. Th

The next is loops and conditional codes.

Here is a for loop. But if we realize a “pause” in this way, it is not really “pause”

Orthogonal Instructions:

Orthogonality is one of the most important properties that can help make even complex designs compact. In a purely orthogonal design, operations do not have side effects; each action (whether it’s an API call, a macro invocation, or a language operation) changes just one thing without affecting others. There is one and only one way to change each property of whatever system you are controlling. Reference

Lecture 2

From Assembly to C

Simple, refer to slides.

I will try to learn MakeFile next time.

Previous

Next: Lab & Assignment of week 1

EOF

Views: 39

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.