Concepts Flashcards

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

To retrieve the information

A

Fetch

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

To 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

A

Execute

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

Stored in memory as bits

A

Instructions

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

CPUs processes instructions ________ unless there is a jump.

A

sequentially

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

The language is a number of sequence of bits.

A

Machine Language

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

Command numbers have been replaced by letter sequences

A

Assembly

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

Cons of Assembly

A
  • Development Time, Maintainability, Portability
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Pros of Assembly

A
  • To undestand how CPUs and compilers work,
  • to develop compilers,
  • reverse engineering,
  • address critical perf-issues,
  • creating/fighting malware,
  • improve algo development skills.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

In Computer Architecture, this connects the parts of the machine.

A

Bus

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

In computer architecture, the collection of the computers’ electrical lines where signals pass through.

A

Bus

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

Fixed-size chunk of bytes.

A

Word

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

In computer architecture, it is responsible for interpreting and executing instructions.

A

CPU

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

In computer architecture, this includes the arithmetic and Logic Unit and CPUs.

A

CPU

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

In CPU, this is responsible for the math and logical operations.

A

Arithmetic and Logic Unit.

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

Flip-flops treated as a single unit.

A

Register

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

Capable of storing a single bit.

A

Flip-flop

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

In computer architecture, it holds the programs and data and info as addresses.

A

Main Memory

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

Middle-level language

A

Assembly Language

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

Maps human-readable mnemonics to machine instructions.

A

Assembly Language

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

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
23
Q

Languages to make programming easier.

A

High-level language.

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

Languages that allow 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
25
Language that provides the basic instructional interface to the computer processor.
Assembly Language
26
This language is the language you can get as close to to the processor of a computer.
Assembly Language
27
Assembly Language gives you direct control of the system's resources: (3)
1. Setting Processor register 2. Accessing Memory Locations 3. Interfacing with other hardware elements.
28
The I/O devices are connected to the _____.
Bus
29
How many bits and bytes is the storage Byte?
8, 1
30
How many bits and bytes is the storage Word?
16, 2
31
How many bits and bytes is the storage Double-Word?
32, 4
32
How many bits and bytes is the storage Quadword?
64, 8
33
How many bits and bytes is the storage Double Quadword?
128, 16
34
A temporary storage or working location built into the CPU itself.
CPU Register
35
Computations are typically performed by the CPU using _________.
registers
36
A register that can be accessed with all 64-bits or some portion or subset accessed.
GPR Register
37
Register used to point to the current top of the stack.
Stack pointer register (RSP)
38
Register used as a base pointer during function calls.
Base Pointer Register (RBP)
39
Register used by the CPU to the point to the next instruction to be executed
Instruction Pointer Register (RIP)
40
Register used for status and CPU control information.
Flag Register (rFlags)
41
Register updated by the CPU after each instruction and not directly accessible by programs.
Flag register (rFlags)
42
Register that stores status information about the instruction that was just executed.
Flag register (rFlags)
43
A flag used to indicate if the previous operation resulted in a carry.
Carry
44
A flag used to indicated of the last byte has an even number of 1's,
Parity
45
A flag used to support Binary Coded Decimal Operations.
Adjust
46
A flag used to indicate if the previous operation resulted in a zero result.
Zero
47
A flag used to indicate if the result of the previous operation resulted in a 1 in the most significant bit.
Sign
48
A flag used to specify the direction for some string operations.
Direction
49
Used to indication if the previous operation resulted in an overflow.
Overflow
50
In little-endian, the __________________________ is stored in the lowest memory address while __________________________ is stored in the highest memory location.
Least Significant Byte, Most Significant Byte
51
Where the machine language (1's and 0's representing the code) is stored.
Text (code)
52
Where the initialized data is stored.
Data
53
Where uninitialized declared variables are stored.
BSS
54
Where dynamically allocated data will be stored (if requested)
Heap
55
Starts in high memory and grows downward (used by subroutines)
Stack
55
A section in an Assembly program where all initialized variables and constants are placed in this section.
Data Section
56
The data section starts with a line of _______________.
section .data
57
What is the format for variable definition?
58
Do constants have memory locations assigned to them?
No
59
What is the format to declare constants?
equ
60
A section in an Assembly program where all uninitialized variables are placed in.
BSS Section
61
BSS section starts with the line ______________.
section .bss
62
What are the directives in BSS section.
resb, resw, resd, resq
63
This program section includes some headers or labels that define the initial program entry point.
Text section
64
Text section starts with what line?
section .text
65
Numeric values in assembly can be specified in ______, _________, or _______ but the default radix base is ___________.
decimal, hex, octal default = decimal
66
Hexadecimals have suffx _ or _ OR preceeded with __ or __.
h or x, 0x or 0h
67
Octals have suffx _ or _ OR preceeded with __ or __.
q or o, 0q or 0o
68
What character signify a comment?
Semicolon (;)
69
A programming process where it modifies the C program according to directives that begin with the # character
Preprocessing.
70
A programming process where it translates the output text file of the pre-processor into a text file which contains an assembly language program.
Compilation
71
A programming process where it translates compiler output to machine language instructions, generating a relocatable program.
Assembly
72
A programming process where it handles the merging of other necessary precompiled object files with the assembler's output, generating an executable file.
Linking
73
In assembly tool chain, this programm will read an assembly language input file and convert the code into a machine language binary file.
Assembler
74
In assembler, comments are removed, and the variable names and labels are converted into appropriate addresses.
Assembler
75
This tool chain is 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
76
what is the NASM assembler command:
nasm -felf64 .asm
77
This tool chain combine one or more object files into a single executable file. It includes user or system libraries are included as necessary.
Linker
78
What is the GNU Linker command?
ld [-o ] .o or ld .o
79
This tool chain is part of the operating system that will load the program from secondary storage into primary storage (main memory)
Loader
80
To load a progam, you implicitly invoke by typing the program name: (format)
./ or ./a.out if no exec file name
81
This tool chain is used to control execution of a program that allows for testing
Debugger