What are the two ways we can interpret sequences of bits?
Instructions telling the computer what to do
Addresses identifying particular pieces of memory
Describe the Difference Engine
Describe the Colossus
Describe IBM 407
- Programmed by manual writing of control panel
What made the EDVAC a big step for computers?
Same storage can be used for numbers and instructions to say what do to do with the numbers
State the steps in the fetch execute cycle
What does the CPU consist of?
Registers
ALU
Control
Instruction Pointer
What is Instruction Set Architecture?
Set of instructions actually understood by the CPU (Their encodings into bits and their meanings)
How many implementations can a single ISA have?
Multiple
What lasts longer ISAs or CPU hardware designs?
ISAs
Describe assembly language
Text representation of individual instructions, very low level and totally ISA specific
What are some features that are present in assembly language?
What are some features that are not present in assembly language?
State the function of a compiler
Converts high level program into low level instructions for a specific machine, not usually needed at run time
State the function of an interpreter
Program that reads a high level program and carries it out. Done at run time.
What does a linker do?
Combines object code files together to make an executable program that can actually run.
What does a loader do?
Loads programs and libraries into memory to prepare them for execution.
What are the key issues in ISA design?
Describe a register
- only form of local variable you have in assembly language
State some types of registers
Describe General Purpose Registers
What part of the general purpose registers allows for backwards compatibility?
Often possible to use part of a register to access smaller units
What does it mean for an ISA to be orthogonal?
If each instruction performs a unique task without overlapping with other instructions
State a critical ISA design decision
Where arguments can come from and where results are stored to