Description:

  • Abstract interface between hardware and the lowest level software
  • User portion of the instruction set plus the operating system interfaces used by application programmers
  • Translate Assembly Language to binary
  • Each assembly language is for 1 micro-processor

Basic processor:

  • One instruction at a time:
    • Fetch
    • Decode
    • Executes

Instruction types:

  • Every architecture has their own instructions but generally follow a few categories:
    • Arithmetic: add, subtract, shift left, shift right, multiply, divide,…
    • Memory: load, store from to register and memory
    • Control flow: conditional jump (branches), jump and link (subroutine call)
    • Others: vector add/sub/mul/div, string ops, IO,…

Architecture includes:

Operands:

  • Can be from:
    • Register
    • Memory
    • Immediate (constant)