Chapter 6 - JEP Flashcards

1
Q

o Allows programmer to skip sections of program

A
  • Jump (JMP)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

o Allows programmer to make decisions based upon numerical tests

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

3 Unconditional Jumps

A

Short
Near
Far

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

 2-byte instruction that allows jumps within +127 and -128 bytes from the address

A

o Short jump

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

 3-byte instruction that allows jumps within +32k bytes from instruction

A

o Near jump

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

 5-byte instruction that allows jumps to any memory location within the real memory system

A

o Far jump

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

o Relative jumps

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

o Moved with related software to any location in code segment without a change

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

 Follows the opcode

A

o Distance/Displacement

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

o Similar to short jump, only farther

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

o Also relocatable

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

o +- 2G in 80386

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

 Denotes relocatable jump address

A

o Letter R

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

o Obtains a new segment and offset address to accomplish the jump

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

 Obtain a far jump from label

A

o Far label

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

 Appear in programs that contain more than one program file

A

o External labels

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

o Sets up instruction as indirect jump
o Address of jump is in register

A
  • Jumps with Register Operands
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

o Double indirect jump

A

Indirect Jumps Using an Index

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

o Always short jumps

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

Conditional jump tests the following flag bits

A

 Sign
 Zero
 Carry
 Parity
 Overflow

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

o Conditions tested by conditional jumps

A
  • Conditional Set Instructions
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

o Set byte to 01H or clear a byte to 00H

A
  • Conditional Set Instructions
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q
  • Combination of decrement CX and JNZ conditional jump
A

LOOP

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

Two Conditional LOOPs

A

LOOPE and LOOPNE

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

LOOPE

A

 Loop while equal

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

 Jumps if cx!=0 while an equal condition exists
 Exits if condition is not equal or cx = 0

A

o LOOPE

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

o LOOPNE

A

 Loop while not equal

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

 Jumps if cx!=0 while a not-equal condition exists
 Exits if condition is equal or if cx = 0

A

o LOOPNE

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

o Do not function when using Visual C++ inline assembler

A
  • Dot commands
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

Two Dot commands

A

o .REPEAT-.UNTIL and .WHILE-.ENDW

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

o Causes all assembler generated statements to be listed

A
  • .LISTALL
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

o Generates label @startup

A
  • .STARTUP
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

o Used with a condition to begin the loop

A
  • .WHILE
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

o Ends the loop

A
  • .ENDW
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q
  • Series of instructions is repeated until some condition occurs
A

REPEAT-UNTIL Loops

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

o Defines start of loop

A
  • .REPEAT
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
37
Q

o End of loop which contains condition

A
  • .UNTIL
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
38
Q
  • Subroutine, method, or function
A

PROCEDURE

39
Q

three terms associated with PROCEDURE

A
  • Subroutine, method, or function
40
Q
  • Group of instruction that performs one task
A

PROCEDURE

41
Q
  • Reusable section of the software
A

PROCEDURE

42
Q

o Links to the procedure

A
  • CALL
43
Q

o Pushes the address of the instruction following the CALL(return address) on the stack

A
  • CALL
44
Q

o Returns from the procedure

A
  • RET
45
Q

o Removes an address from the stack so the program returns to the instruction following the call

A
  • RET
46
Q

o Procedures used by all software

A
  • Global
47
Q

o Far procedures

A
  • Global
48
Q

o Procedures used by a given task

A
  • Local
49
Q

o Near procedures

A
  • Local
50
Q
  • Transfers flow of program to the procedure
A

CALL

51
Q

o 3 bytes long

A
  • Near Call
52
Q

o First byte – opcode
o Second and third – displacement
 +- 32k

A
  • Near Call
53
Q

o Like a far jump

A
  • Far Call
54
Q

o Call a procedure stored in any memory location in the system

A
  • Far Call
55
Q

o 5-byte instruction
o Opcode – IP (2 & 3) and CS (4 & 5)

A
  • Far Call
56
Q
  • often keyed with a number that addresses a CALL address in a lookup table
A

CALLs with Indirect Memory Addresses

57
Q
  • return instruction
A

RET

58
Q

o removes a 16-bit number from the stack and places it into IP
o removes a 32-bit number and places it into IP and CS

A

RET

59
Q

o externally derived from hardware signal

A
  • hardware-generated CALL
60
Q

o execution of instruction

A
  • software-generated CALL
61
Q

two types of INTERRUPT

A

hardware-generated CALL
software-generated CALL

62
Q

also called “exception”

A

INTERRUPT

63
Q
  • 4-byte number stored in the first 1024 bytes of memory when the microprocessor operates in the real mode
A

Interrupt Vectors

64
Q

o 256 different software interrupt instructions

A
  • INTs
65
Q

o Address of interrupt vector is determined by multiplying the interrupt number by __

A

4

66
Q

 Used to call system procedures because the address of the system function need not be known

A

o Software interrupts

67
Q

 Used only with software or hardware interrupt service procedures
 Pop stack data back into the IP
 Pop stack data back into CS
 Pop stack data back into the flag register

A

o Interrupt Return instruction

68
Q

 80386 through Core2
 Return from an interrupt service that is called in the protected mode

A

o IRETD

69
Q

 Pops 32-bit pointer from the stack

A

o IRETD

70
Q

Interrupt operated in Real Mode

A

o Interrupt Return instruction (IRET)

71
Q

Interrupt operated in Protected Mode

A

o IRETD

72
Q

o Function as breakpoint
o 1-byte instruction

A
  • INT 3
73
Q

o Interrupt an overflow

A
  • INTO
74
Q

o Software that adds or subtracts signed binary numbers

A
  • INTO
75
Q

o Ends with IRET instead of RET, contents of flag register are saved on the stack

A
  • Interrupt Service Procedure
76
Q

 Set interrupt flag
 Places 1 into I flag bit

A

o STI

77
Q

 Clear interrupt flag
 Places 0 into I flag bit

A

o CLI

78
Q

 Retrieves 8-byte return address
 Retrieves the 32-bit EFLAG

A

o IRETQ

79
Q

o STC

A

 Set carry

80
Q

o CLC

A

 Clear carry

81
Q

o CMC

A

 Complement carry

82
Q

o Monitors the hardware BUSY pin on the 80286 and 80386 and the TEST pin on the 8086/8088

A
  • WAIT
83
Q
  • HLT
A

o Halt

84
Q

o Stops the execution of software

A
  • HLT
85
Q

o THREE WAYS TO EXIT A HALT

A

 By interrupt
 By hardware reset
 During a DMA operation

86
Q
  • NOP
A

o No operation

87
Q

Appends an instruction and causes the LOCK pin to become logic 0

A
  • LOCK Prefix
88
Q
  • ESC
A

o Escape

89
Q

o Passes instructions to the floating-point coprocessor from the microprocessor

A
  • ESC
90
Q

o Comparison instruction that may cause an interrupt

A
  • BOUND
91
Q

o Compares the contents of any 16-bit or 32-bit register against the contents of two words of memory

A
  • BOUND
92
Q

 Creates a stack frame by pushing BP onto the stack and then loading BP with the uppermost address of the stack frame

A

o ENTER

93
Q

 Reverses the process by reloading both SP and BP with their prior values

A

o LEAVE