• Shuffle
    Toggle On
    Toggle Off
  • Alphabetize
    Toggle On
    Toggle Off
  • Front First
    Toggle On
    Toggle Off
  • Both Sides
    Toggle On
    Toggle Off
  • Read
    Toggle On
    Toggle Off
Reading...
Front

Card Range To Study

through

image

Play button

image

Play button

image

Progress

1/22

Click to flip

Use LEFT and RIGHT arrow keys to navigate between flashcards;

Use UP and DOWN arrow keys to flip the card;

H to show hint;

A reads text to speech;

22 Cards in this Set

  • Front
  • Back

five classical components of computer

input


output


memory


datapath


control

basic operations of computer

arithmetic


data transfer


logical


conditional branch


jump

levels of program language

high level language


assembly language


hardware representation

layers below your program

application software


system software (compiler, operating system)


hardware (processor,memory, IO)



number bases

binary (2)


octal (8)


decimal (10)


hexadecimal (16)

solution negative numbers

two's complement for signed numbers:


leading zero's means positive (MSB)


leading one's means negative (MSB)




in MIPS 32 bit word, the middle word with one leading one and rest of zero's, does not have positive complement

MSB,LSB

Most Significant Bit, Least Significant Bit

negating two's complement number

invert


add 1

two's complement: word length change

for example from 8 bits to 16 bit




Copy MSB into empy bits

overflow

result of operation is too large for finite computer word

detecting overflow

no overflow:


when adding positive and negative numbers


signs are the same for subtraction




occurs when the value affects the sign of the result

Instruction Set Architecture (ISA)

abstract interface between hardware and lowest-level software, that encompasses all the informattion necessary to write a machine language program that will run correctly

stored-program concept

the idea that instructions and data of many types can be stored in memory as numbers

memory conflicting requirements

fast, large and cheap




solution: hierarchy of memory


from top to bottom: fast to slow

memory: registers and main memory

MIPS:


provides 32 register with word size (32 bit)


use byte address to access main memory



memory access instructions

lw


load word from memory into register




sw


store word from register into memory




offset


use offset to access array elements in base address


[pay attention to word size (bytes), this will scale the offset]

logical operations

SHIFT


sll (shift left logical)


srl (shift right logical)




AND


and (mask bits in word, result displays 1 only if both operands contain 1)




OR


or (include bits in word, places 1 in result if either operand is a bit)




NOT


nor (invert bits in word)



conditional branch & unconditional jump

branch to labeled instruction if condition is true


beq (both are equal)


bne (both are unequal)




jump to instruction


j

program counter (PC)

implicit in the stored-program concept is the need to have a register to hold the address of the current instruction being executed




points to next instruction to be executed

Arithmetic-Logic Unit (ALU) purposes

address calculations of memory-reference instructions




operation execution of arithmetic-logical instructions




comparison for branches

spilling registers

putting less commonly used variables into memory as solution to


programs uses more variables than computer has registers

steps of executing a program

Fetch instructions


Decode instructions


Fetch data (from memory to processor registers)


Execute instructions


Store results (memory or registers)


Change PC (points to following instruction)


Repeat (go to step one)