In order to run some software you need a real machine and real machines come with a great variety of architecture: a kind of differentiation could be

  • load/store architecture: instructions are divided in two categories: memory access and ALU operations between registers.
  • register architecture: instructions are not divided and operations like add can be between memory and registers.

In particular, the kind of architecture can influence the way a function is called:


There are two notations: Intel and AT&T.


Four principles of IS architecture

  • simplicity favors regularity
  • smaller is faster
  • good design demands compromise
  • make the common case fast
  • Wikipedia
  • RISC-V vs x86 - History and Key Differences Explained video


In electronics engineering and computer engineering, microarchitecture, also called computer organization and sometimes abbreviated as µarch or uarch, is the way a given instruction set architecture (ISA) is implemented in a particular processor. A given ISA may be implemented with different microarchitectures; implementations may vary due to different goals of a given design or due to shifts in technology.

Computer architecture

Computer architecture is the combination of microarchitecture and instruction set designs.


The name stands for Reduced instruction set computing: it's a CPU design.


Scalable Processor ARChitecture. It's an ISA.


Performance Optimization With Enhanced RISC


The MOS Technology 6502 is a little-endian 8-bit microprocessor with a 16 bit address bus

  • Wikipedia page
  • cc65 is a complete cross development package for 65(C)02 systems, including a powerful macro assembler, a C compiler, linker, librarian and several other tools.

Ricoh 5A22/SNES

The Ricoh 5A22 is a microprocessor produced by Ricoh for the Super Nintendo Entertainment System (SNES) video game console and is based on the MOS Technology 6502 family of processors.


Open source ISA