Introduction Flashcards

(70 cards)

1
Q

Machine Cycle

A

Fetch > Decode > Execute

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

Retrieve the instruction from memory and increment the Program Counter

A

Fetch

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

Decode the bit pattern in the Instruction Register

A

Decode

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

Perform the instruction in the Instruction Register

A

Execute

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

Instructions are from a language called ____

A

Machine Language

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

An executable program is a sequence of these simple instructions, which are stored in memory

A

Machine Code

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

The computer can only understand the bits (the encoded program):

A

Machine Language

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

English-like abbreviations for programs:

A

Assembly Language

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

What the computer actually sees and deals with. Given as a number or a sequence of numbers.

A

Machine Language

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

Same as machine language, except the command numbers have been replaced by letter sequences

A

Assembly Language

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

Middle-level language, maps human-readable mnemonics to machine instructions, allows machine-level programming without writing in machine language

A

Assembly Language

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

Allows you to describe the program in a more natural language

A

High-level language

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

Low-level language which provides the basic instructional interface to the computer processor

A

Assembly Language

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

As close to the processor as you can get as a programmer

A

Assembly Language

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

Reasons not to use assembly:

A

> Development TIme
Maintainability
Portability

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

The I/O devices connected to the bus

A

Input and Output

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

A collection of the computer’s electrical lines where signals pass through

A

bus

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

The bus is typically designed to transfer fixed-sized chunks of bytes known as _____

A

words

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

The computer’s processor; Engine that interprets (or executes) instructions stored in main memory

A

Central Processing Unit

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

CPU chip includes the _____ and ______

A

Arithmetic and Logic Unit, CPU Registers

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

A logic circuit in the CPU that is responsible for performing mathematical and logical operations

A

Arithmetic and Logic Unit

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

A set of flip-flops treated as a single unit

A

register

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

A digital logic circuit capable of storing a single bit

A

flip-flop

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

Temporary storage device that holds both a program and the data it manipulates while the processor is executing the program

A

Main Memory

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Data storage sizes in order
Byte > Word > DWord > QWord > DQWord
26
Temporary storage or working location built into the CPU itself (separate from memory)
register
27
Computations are typically performed by the CPU using ______
registers
28
A ______ can be accessed with all 64-bits or some portion or subset accessed
General Purpose Register
29
Used to point to the current top of stack
Stack pointer register (RSP)
30
Used as a base pointer during function calls
Base pointer register (RBP)
31
Used by the CPU to point to the next instruction to be executed
Instruction pointer register (RIP)
32
Used for status and CPU control information
Flag register (rFlags)
33
Updated by the CPU after each instruction and not directly accessible by programs
Flag register (rFlags)
34
stores status information about the instruction that was just executed
Flag register (rFlags)
35
Can be viewed as a series of bytes; each memory address holds one byte of information
Main Memory
36
Main memory architecture is _____
little-endian
37
Stored in the lowest memory address
Least Significant Byte (LSB)
38
Stored in the highest memory location
Most Significant Byte (MSB)
39
Makes use of LSB and MSB
Little-endian architecture
40
where the machine language is stored
text (code)
41
where the initialized data is stored
data
42
where uninitialized declared variables are stored
BSS
43
where dynamically allocated data will be stored (if requested)
heap
44
starts in high memory and grows downward (used by subroutines)
stack
45
Goal of Memory Hierarchy
Balance performance with cost
46
all initialized variables and constants are places in this section
Data Section
47
Data section starts with ____
section .data
48
____ substituted for their defined values during the assembly process
constant
49
not assigned a memory location
constant
50
format for constants
equ
51
format for variable definition
52
all uninitialized variables are placed in this section
BSS Section
53
BSS section starts with ____
section .bss
54
includes some headers or labels that define the initial program entry point
Text Section
55
Text section starts with ___
section .text
56
Numeric values may be specified in ______
Decimal, hex, or octal
57
Default radix (base) for numeric value is _____
Decimal
58
modifies the original C program according to directives that begin with the # character
Preprocessing
59
translates the output text file of the pre-processor into a text file which contains an assembly language program
Compilation
60
Translates compiler output to machine language instructions, generating a relocatable object program
Assembly
61
Handles the merging of other necessary precompiled object files with the assembler's output, generating an executable file
Linking
62
Program that will read an assembly language input file and convert the code into a machine language binary file
Assembler
63
comments are removed, and the variable names and labels are converted into appropriate addresses
Assembler
64
optionally capable of creating a list file which shows the line number, the relative address, the machine language version of the instruction, and the original source line
Assembler
65
combines one or more object files into a single executable file
Linker
66
any routines from user or system libraries are included as necessary
linker
67
part of the operating system that will load the program from secondary storage to primary storage (main memory)
loader
68
used to control execution of a program
debugger
69
allows for testing and debugging activities to be performed
debugger
70