isa Flashcards
isa
specifies the operations a computer can preform, their format and how to access information in memory
How many object can we uniquely identify with k bits?
2^k
big-endian
MSB at the lowest address
little-endian
LSB at the lowest address
Modern computers have instructions capable of performing 4 types of operations:
data transfer
arithmetic and logic
program sequencing and control
i/o transfers
straight line sequencing
the control unit increases the PC to point to the next instruction; no jumps
immediate addressing
operand is part of the instruction
pro: no additional operation is needed to have the value of the operand
con: the value can’t change
absolute (direct) addressing
operand in memory and we specify the full address
pro: no additional operation is needed to have the address
con: the value can’t change (the location must be known at compile time) and limited addressing
register indirect addressing
the operand is in memory and we specify the address in a register
pro: memory location can be changed
con: more memory accesses
indexed addressing
the address of the operand is generated by adding a value to the content of a register
pro: memory location can be changed, allows specification offset, convenient in loops
con: more memory accesses, additional operation needed to get the access
flexibility of ISA
supported operations
programmability
how complex is it to program?
length/complexity of code
implementation cost
amount/complexity of instructions
CISC
many complex instructions
memory-to-memory operations
easier to program
complex hardware
instructions take multiple cycles
lots of hardware, energy inefficient
RISC
less and simpler instructions
load/store architecture
instructions use a single word
spends more transistors on memory registers
single-clock per I