CSCI 223 Quiz 4 Flashcards

1
Q

ISA

A

Instruction Set Architecture - interface between software and hardware

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

ISA is considered (micro/macro)architecture

A

macroarchitecture

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

microarchitecture

A

implementation of macroarchitecture; not visible to software; can vary as long as it satisfies the macroarchitecture

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

system stack: software

A

problem, algorithm, program

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

system stack: hardware

A

microarchitecture, circuits, transistors

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Moore’s Law

A

transistor counts double every 18-24 months on a single chip (means the performance will double)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

PC (program counter)

A

contains the address of the next instruction to execute; called “%eip” (IA32) or “%rip” (x86-64)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

register file

A

collection of registers; used to store heavily used program data

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

condition codes

A

store status information about most recent arithmetic operation; used for conditional branching

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

memory

A

byte addressable array; code, user data, some OS data; includes stack used to support procedures

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

three basic operations of machine instructions

A
  1. arithmetic and logic operation (ALU)
  2. memory operation (AKA data movement)
  3. control-flow operation
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

x86 is a (CISC/RISC) type

A

CISC

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

CISC

A

Complex Instruction Set Computers; large number of instructions, varying instruction length, various addressing formats, complex compiler and hardware, compact code size

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

RISC

A

Reduced Instruction Set Computers; smaller number of instructions, fixed instruction length, only a few addressing formats, simpler compiler and hardware, larger code size

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

assembly data types

A

integer data (including memory address), floating point data; no aggregate types such as arrays or structures, just continuously allocated bytes in memory

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

assembly operations

A

perform arithmetic/logical function on register or memory data, transfer data b/w memory and register, transfer control

17
Q

disassembler

A

useful tool for examining object code; analyses bit pattern of series of instructions, produces approximate rendition of assembly code, can be run on either a.out (complete executable) or .o file

18
Q

x86-64 Integer registers

A

supposed to contain integer value or memory address; can reference low-order 4 bytes; controlled by compiler; 16 registers

19
Q

IA32 integer registers

A

8 integer registers (first 6 - general purpose, %esp: stack pointer, %ebp: base pointer); can reference low-order 1 byte, 2 bytes, and 4 bytes; 16-bit registers with backwards compatibility

20
Q

operand types

A

immediate, register, memory

21
Q

immediate operand type

A

constant integer data; like C constant, but prefixed w/ ‘$’; encoded with 1, 2, or 4 bytes

22
Q

register operand type

A

one of 16 integer registers; %rsp reserved for special use; others have special uses for particular instructions

23
Q

memory operand type

A

8 consecutive bytes of memory at address given by register; various other “address modes”