Looks like no one added any tags here yet for you.
CPU (Central Processing Unit)
Executes instructions.
Main Memory (RAM)
Stores programs and data.
Input Devices
Keyboard, mouse, etc.
Output Devices
Monitor, printer, etc.
The Bus
Transfers data between components.
Von Neumann Architecture
Stores both instructions and data in memory.
Fetch-Decode-Execute Cycle
Used to run programs.
PEP/9
A teaching CPU model used to learn computer architecture concepts.
Accumulator (A)
Primary register for operations.
Index Register (X)
Used for looping and indexing.
Program Counter (PC)
Holds the next instruction's address.
Stack Pointer (SP)
Manages function calls.
Instruction Register (IR)
Stores the current instruction.
Status Bits
Flags for zero, negative, and overflow conditions.
Immediate Addressing
Operand is in the instruction itself.
Direct Addressing
Operand is at a memory address.
Indirect Addressing
Address points to another address.
Stack-relative Addressing
Operand is relative to the stack pointer.
Indexed Addressing
Uses index register (X) to modify address.
Opcode
Specifies operation.
Register Bit
0 for A, 1 for X.
Address Mode Bits
Determines operand location.
Operand
16 bits, if needed.
STOP
Opcode 0000, Hex Code 00.
Load Word
Opcode 1100, Hex Code C.
Load Byte
Opcode 1101, Hex Code D.
Store Word
Opcode 1110, Hex Code E.
Store Byte
Opcode 1111, Hex Code F.
Add
Opcode 0110, Hex Code 6.
Subtract
Opcode 0111, Hex Code 7.
AND
Opcode 1000, Hex Code 8.
OR
Opcode 1001, Hex Code 9.
FC15
Input character from keyboard.
FC16
Output character to screen.
D1 FC 15
Load a byte from input into A.
F1 FC 16
Store A byte to output.
E1 00 20
Store at memory `0020`.
C1 00 20
Load first character from memory.
C0 00 07
Load 7 into A.
60 00 08
Add 8.
60 00 0D
Add 13.
E1 00 FF
Store result at `00FF`.
80 03 7F
AND operation.
90 01 2C
OR operation.
LDBA
Load Byte to Accumulator.
LDWA
Load Word to Accumulator.
STBA
Store Byte from Accumulator.
STWA
Store Word from Accumulator.
STOP
Halt Program.
.END
Marks end of an assembly program.
.ASCII
Inserts ASCII characters into memory.
C1 48 B7
Loads memory location 48B7 into A.
71 00 3C
Hex command to subtract memory location 3C from A.
C0 00 02
Load 2 into A.
F1 FC 16
Print A.