1What is the Fetch-Execute Cycle?
1. Contents of PC are copied to MAR
2. PC is incrimented by 1
3. MAR fetches data at given address and loads into the MDR
4. Contents of MDR copied to CIR
5. Instructions are decoded by CPU; executed by CIR
6. Cycle repeats.
2What are Registers?
Temporary storage of data that needs to be or has been processed
3Types of registers in a computer
- Program Counter (PC)
- Memory Data Register (MDR)
- Memory Address Register (MAR)
- Current Instruction Register (CIR)
- Index Register (IX)
- Accumulator (ACC)
- Status Register (SR)
4What is a Program Counter (PC)?
Stores address of the next instruction to be fetched
5What is a Memory Data Register (MAR)?
Stores data received from Memory.
6What is a Memory Address Register (MAR)?
Stores address where data needs that needs to be fetched is located then sent to MDR.
7What is the Current Instruction Register (CIR)?
Stores data received from MDR
8What is an Index Register (IX)?
Stores a value that is used to calculate an address.
9What is an Accumulator (ACC)?
Stores values temporarily after an execution of instruction by the ALU
10What is a Status Regsiter (SR)?
Contains independant bits/flags; each flag is set based on an event
11What is an Arithmetic Logic Unit (ALU)?
Carries out arithmetic and logical operations like input and output; part of the processor
12What is the Control Unit (CU)?
Sends & receives signals to control operations like input and output; helps coordinate actions of different components
13What is the Immediate Acces Store (IAS)?
A memory unit that is directly accessed by the processor
14What is the System Clock?
Generates the timing signals that synchronises the components on the motherboard
15What factors affect performance?
- Processor type and number of cores
- Cache Memory
- Bus Width
- Clock Speed
16What is Clock Speed?
Each instruction is executed on a single clock pulse; the faster the clock speed, the more instructions that can be executed per second.
17What is Bus Width?
The number of directly addressable memory locations to transfer data between.
18What is Cache memory?
Stores frequently / recently used information so that it can be quickly accessed
19What is Universal Serial Bus (USB)?
Connects through USB port (on PC) for input and output devices,
(bi-directional data transfer, meaning can read and write data on USB drive)
20What is Video Graphics Array (VGA)?
Only connects to output devices,
- Unidirectional port
- Allows transmission of video transissions; no audio
21What is High Definition Multimedia Interface (HDMI)?
Only connects to output devices
- Transmit high-bandwidth&resolution video and audio streams through HDMI ports.
22What is a Data Bus?
Bidirectional bus that carries data instructions between CPU, memory, and I/O devices
23What is a Control Bus?
Unidirectional bus that address of main memory location or I/O device aout to be used, from CPU to MAR
24What is an Address Bus?
- Bidirectional & Unidirectional
- Tranmits control signals from Control Unit (CU) to memory (RAM) or I/O devices to initiate data transfer
25What are Interrupts?
A signal from a program seeking processors attention.
- Interrupt Service Routine (ISR)
- Handles interrupts by controlling the processor
- Different ISRs used for different sources of interrupt.
26What is Assembly language?
A low-level programming language with instructions made up of Opcodes and Operands
27What are the modes of addressing in Assembly?
- Immediate
- Direct
- Indirect
- Indexed
- Relative
28What is Immediate addressing in Assembly?
Operand is the value used in the instruction
(LDM, LDR)
29What is Direct addressing in Assembly?
Loads contents from the address into the ACC
(LDD, STO)
30What is Indirect addressing in Assembly?
The address to be used is at the given address
(LDI, CMI)
31What is Indexed addressing in Assembly
Form the address from the given address plus the contents of the Index Register (IX)
(LDX)
32What is Relative addressing in Assembly?
The address to be used is an offset number of location away, relative to the address of the current instruction
(No operand)
e.g block of memory starts from address 100, instruction: "LDD 16", Loads contents of address 116 to accumulator.