Untitled

ALU

Buses

Address bus

<aside> 💡 Used to transmit the address in the RAM of the next line of program code to be fetched. Used to transmit the address of a RAM location or input/output port where data is to be stored or loaded

</aside>

Data bus

<aside> 💡 Used to transfer program code between RAM memory and the processor. Used to transfer data between the processor and RAM memory or input/output ports

</aside>

Control bus

<aside> 💡 Used to send control signals from the processor to the RAM memory or input/output ports to initiate data transfer. Carries interrupt signals to the processor to indicate that hardware/software requires attention.

</aside>

Registers

<aside> 💡 Small blocks of memory used for any storage needed by instructions currently being executed

</aside>

  1. General purpose registers - can be used by the developer to store any values they wish
  2. Special purpose registers - have a more specific purpose

Examples of special purpose registers

  1. Program Counter - used to store the next instruction to be executed
  2. Memory Address Register - used to store the memory address where the next instruction is located
  3. Memory Data Register - used to store the data at the memory address that is to be executed