Skip to main content

Section C.4 M1: Introduction to Machine Code Programming

Synopsis.

  • Basic, very high-level understanding of computer architecture.

  • MIPS processor, registers, program counter, memory, bus, rest of the system

  • What is an instruction, how does it look like?

  • Different kinds of instructions (arithmetic, load/store, control).

  • Discuss kinds of instructions by means of the simple factorial function code.

  • Introduce the assembler, relieves us from coding instructions manually, provides labels for addresses, pseudo instructions, has directives. Introduce separate translation with translation units (will be the same in C and Java and many other compiled languages).

  • Execution traces. Execute programs on paper to deepen understanding of program execution.

Sections Covered.

Section 2.1, Section 2.2, Section 2.3, Section 2.4, Section 2.7