Home
Explore
Exams
Search for anything
Login
Get started
Home
Engineering
Electrical Engineering
Micro 3-4
0.0
(0)
Rate it
Learn
Practice Test
Spaced Repetition
Match
Flashcards
Card Sorting
1/192
Earn XP
Description and Tags
Lnte ni nga pangabuhi
Electrical Engineering
10th
Add tags
193 Terms
View all (193)
Star these 193
1
New cards
MOV instruction
is a common and flexible instruction.
2
New cards
MOV
provides a basis for explanation of data addressing modes
3
New cards
Opcode or operation code
tells the microprocessor which operation to perform
4
New cards
Register Addressing
The most common form of data addressing.
5
New cards
AH, AL, BH, BL, CH, CL, DH, and DL.
8-bit register names used with register addressing
6
New cards
AX, BX, CX, DX, SP, BP, SI, and DI.
16-bit register names
7
New cards
EAX, EBX, ECX, EDX, ESP, EBP, EDI, and ESI.
Extended 32-bit register names are
8
New cards
RAX, RBX, RCX, RDX, RSP, RBP, RDI, RSI, and R8 through R15.
64-bit mode register names are
9
New cards
do not change.
The source register’s contents ___.
10
New cards
do change.
The destination register’s contents ___
11
New cards
CMP and TEST instructions
The contents of the destination register or destination memory location change for all instructions except the __*and*__ _____
12
New cards
MOV BX, CX instruction
The ____ does not affect the leftmost 16 bits of register EBX.
13
New cards
Immediate
Term that implies that data immediately follow the hexadecimal opcode in the memory.
14
New cards
Immediate data
data transferred from a register or memory location are variable data Immediate addressing
15
New cards
In symbolic assembly language, the symbol \# precedes immediate data in some assemblers.
16
New cards
If hexadecimal data begin with a letter, the assembler requires the data start with a 0.
17
New cards
- to represent a hexadecimal F2, 0F2H is used in assembly language
18
New cards
Decimal data are represented as is and require no special codes or adjustments.
19
New cards
An ASCII-coded character or characters may be depicted in the immediate form if the ASCII data are enclosed in apostrophes.
20
New cards
Binary data are represented if the binary number is followed by the letter B
21
New cards
Each statement in an assembly language program consists of four parts or fields.
22
New cards
Label
it is the leftmost field. Used to store a symbolic name for the memory location it represents
23
New cards
Label
appears in a program to identify the name of a memory location for storing data and for other purposes.
24
New cards
Opcode field
designed to hold the instruction, or opcode.
25
New cards
Operand field
Right of the opcode field. Contains information used by the opcode.
26
New cards
Comment field or the final field
contains a comment about the instruction(s).
27
New cards
semicolon (;)
Comments always begin with a ___
28
New cards
Direct Data Addressing
Applied to many instructions in a typical program.
29
New cards
Direct addressing and Displacement addressing
Two basic forms of direct data addressing:
30
New cards
Direct addressing
which applies to a MOV between a memory location and AL, AX, or EAX
31
New cards
Displacement addressing
which applies to almost any instruction in the instruction set
32
New cards
Address
is formed by adding the displacement to the default data segment address or an alternate segment address.
33
New cards
Direct addressing with a MOV instruction
transfers data between a memory location, located within the data segment, and the AL (8-bit), AX (16-bit), or EAX (32-bit) register.
34
New cards
Direct addressing
the instruction is usually a 3-byte long instruction
35
New cards
Displacement Addressing
Almost identical to direct addressing, except the instruction is 4 bytes wide instead of 3.
36
New cards
Displacement Addressing
In 80386 through Pentium 4, this instruction can be up to 7 bytes wide if a 32-bit register and a 32-bit displacement are specified.
37
New cards
Displacement Addressing
This type of direct data addressing is much more flexible because most instructions use it.
38
New cards
Register Indirect Addressing
Allows data to be addressed at any memory location through an offset address held in any of the following registers: BP, BX, DI, and SI.
39
New cards
Data segment
is used by default with register indirect addressing or any other mode that uses BX, DI, or SI to address memory.
40
New cards
Stack segment
If the BP register addresses memory, this is used by default.
41
New cards
Special assembler directive
In some cases, indirect addressing requires this in order to specify the size of the data
42
New cards
BYTE PTR, WORD PTR, DWORD PTR, or QWORD PTR.
Special assembler directive
43
New cards
Memory pointer (PTR)
These directives indicate the size of the memory data addressed by the \____
44
New cards
Indirect addressing
often allows a program to refer to tabular data located in memory.
45
New cards
Base-Plus-Index Addressing
Similar to indirect addressing because it indirectly addresses memory data.
46
New cards
The base register
often holds the beginning location of a memory array
47
New cards
Index register
holds the relative position of an element in the array
48
New cards
Stack segment register and BP
Whenever BP addresses memory data, both the \______ and \____ generate the effective address.
49
New cards
Register Relative Addressing
Similar to base-plus-index addressing and displacement addressing
50
New cards
Register Relative Addressing
data in a segment of memory are addressed by adding the displacement to the contents of a base or an index register (BP, BX, DI, or SI)
51
New cards
Addressing Array Data with Register Relative
It is possible to address array data with register relative addressing.
52
New cards
Base Relative-Plus-Index Addressing
adds a displacement and uses a base register and an index register to form the memory address.
53
New cards
Base Relative-Plus-Index Addressing
This type of addressing mode often addresses a two-dimensional array of memory data
54
New cards
Addressing Data with Base Relative-Plus-Index
Least used addressing mode.
55
New cards
Addressing Data with Base Relative-Plus-Index
This addressing mode is too complex for frequent use in programming.
56
New cards
Addressing Arrays with Base Relative-Plus-Index
Suppose a file of many records exists in memory, each record with many elements.
57
New cards
Addressing Arrays with Base Relative-Plus-Index
Displacement addresses the file, base register addresses a record, the index register addresses an element of a record
58
New cards
Scaled-Index Addressing
Unique to 80386
59
New cards
Scaled-Index Addressing
uses two 32-bit registers (a base register and an index register) to access the memory
60
New cards
Scaling factor
1x, 2x, 4x, 8x
61
New cards
RIP Relative Addressing
Uses the 64-bit instruction pointer register in the 64-bit mode to address a linear location in the flat memory model.
62
New cards
RIP Relative Addressing
Inline assembler program available to Visual does not contain any way of using this mode or any other 64-bit addressing mode
63
New cards
The Microsoft Visual
does not at present support developing 64-bit assembly code.
64
New cards
Data Structures
Used to specify how information is stored in a memory array.
65
New cards
Data Structures
a template for data
66
New cards
STRUB assembly language directive, ENDS statement
The start of a structure is identified with the \___ and the end with the \___
67
New cards
PROGRAM MEMORY ADDRESSING MODES
Used with the JMP (jump) and CALL instructions.
68
New cards
direct, relative, and indirect
Three distinct forms of program memory addressing mode
69
New cards
Direct Program Memory Addressing
Used for all jumps and calls by early microprocessor; also used in high-level languages, such as BASIC.
70
New cards
Direct Program Memory Addressing
The microprocessor uses this form, but not as often as relative and indirect program memory addressing.
71
New cards
Direct Program Memory Addressing
The instructions for direct program memory addressing store the address with the opcode
72
New cards
Intersegment jump
is a jump to any memory location within the entire memory system
73
New cards
Far jump
it can jump to any memory location for the next instruction
74
New cards
Intersegment or far CALL instruction
The only other instruction using direct program addressing.
75
New cards
Label
name of a memory address
76
New cards
CALL instruction
refers to the location that is called or jumped to instead of the actual numeric address.
77
New cards
Relative Program Memory Addressing
Not available in all early microprocessors, but it is available to this family of microprocessors.
78
New cards
Relative Program Memory Addressing
The term relative means “relative to the instruction pointer (IP)”.
79
New cards
Relative Program Memory Addressing
The JMP instruction is a 1-byte instruction, with a 1-byte or a 2-byte displacement that adds to the instruction pointer
80
New cards
Indirect Program Memory Addressing
The microprocessor allows several forms of program indirect memory addressing for the JMP and CALL instructions.
81
New cards
Indirect Program Memory Addressing
In 80386 and above, an extended register can be used to hold the address or indirect address of a relative JMP or CALL.
82
New cards
Indirect jump
If a relative register holds the address, the jump is considered to be an\____.
83
New cards
Indirect jump, intrasegment jump, double-indirect jump
Types of JUMP
84
New cards
Stack
plays an important role in all microprocessors. It holds data temporarily and stores return addresses used by procedures
85
New cards
LIFO (last-in, first-out)
Stack memory is \___ memory
86
New cards
LIFO (last-in, first-out)
describes the way data are stored and removed from the stack
87
New cards
Push instruction, POP instruction
Data are placed on the stack with a __; removed with a \_______.
88
New cards
The stack pointer (SP or ESP), the stack segment register (SS)
Stack memory is maintained by two registers:
89
New cards
Machine Language
Native binary code microprocessor uses as its instructions to control its operation.
90
New cards
1 to 13 bytes
Machine language instructions vary in length from \____
91
New cards
100,000
Over \___ variations of machine language instructions.
92
New cards
Binary opcode
general form of the opcode: First 6 bits of the first byte are the \___
93
New cards
direction (D) of the data flow, byte or word (W)
Remaining 2 bits indicate the \____, and indicate whether the data are a \_____
94
New cards
MOD Field
Specifies addressing mode and whether a displacement is present with the selected type.
95
New cards
Special Addressing Mode
occurs when memory data are referenced by only the displacement mode of addressing for 16-bit instructions
96
New cards
00, 110
When an instruction has only a displacement, MOD field is always __; R/M field always \___.
97
New cards
Scaled-index byte
indicates additional forms of scaled-index addressing.
98
New cards
Scaled-index byte
mainly used when two registers are added to specify the memory address in an instruction
99
New cards
32K
A scaled-index instruction has\___ possible combinations.
100
New cards
PUSH/POP
Important instructions that store and retrieve data from the LIFO (last-in, first-out) stack memory.
Load more