1
指令系统第 2部分
2
三、逻辑运算和移位类逻辑运算移位操作与或非异或非循环移位循环移位逻辑移位算术移位不带进位位的移位带进位位的移位
3
1.逻辑运算
逻辑运算指令对操作数的要求大多与
MOV指令相同。,非,运算指令要求操作数不能是立即数;
除“非”运算指令外,其余指令的执行都会使标志位 OF=CF=0
4
“与”指令:
格式,AND OPRD1,OPRD2
操作,两操作数相,与,,结果送目标地址
5
“与”指令的应用
实现两操作数相与的运算;
使目标操作数的某些位不变,某些位清零;
在操作数不变的情况下使 CF和 OF清零。
实现手段:
6
“与”指令应用例
AND BL,[BX]
AND AL,0FH
AND AX,AX
7
“或”运算指令
格式,OR OPRD1,OPRD2
操作,两操作数相,或,,结果送目标地址
8
“或”指令的应用
实现两操作数相“或”的运算;
使某些位不变,某些位置,1”
在不改变操作数的情况下使 OF=CF=0
9
“或”指令的应用例
OR AX,[DI]
OR CL,0FH
OR AX,AX
OR AL,AL
JPE GOON
OR AL,80H
GOON,….
偶校验转移
( PF=1)
将一个二进制数 9变为字符
‘ 9’
?
10
“非”运算指令
格式,NOT OPRD
操作:操作数按位取反再送回原地址
指令中的操作数不能是立即数
指令的执行对标志位无影响
例,NOT BYTE PTR[BX]
11
“异或”运算指令
格式,XOR OPRD1,OPRD2
操作,两操作数相,异或,,结果送目标地址
两操作数自身相异或,结果
XOR AX,AX
12
“测试”指令
格式,TEST OPRD1,OPRD2
操作,执行“与”运算,但运算的结果不送回目标地址。
应用:常用于测试某些位的状态
13
“测试”指令例
从地址为 38F0H的端口中读入一个字节数,
如果该数的 bit1位为 1,则可从 38FEH端口将 DATA为首地址的一个字输出,否则就不能进行数据传送。
编写相应的程序段。
14
“测试”指令例开 始取待输出数的偏移地址读入状态字测试 bit1位状态
Bit1=1?
取输入口地址取输出口地址输出一个字
N
Y
15
“测试”指令例
LEA SI,DATA
MOV DX,38F0H
WATT,IN AL,DX
TEST AL,02H
JZ WATT ; ZF=1转移
MOV DX,38FEH
MOV AX,[SI]
OUT DX,AX
16
2,移位指令非循环移位指令循环移位指令
移动一位时由指令直接给出;移动两位及以上,则移位次数由 CL指定。
17
非循环移位指令
逻辑左移
算术左移
逻辑右移
算术右移
18
算术左移和逻辑左移
格式:
SAL OPRD,1
SAL OPRD,CL
SHL OPRD,1
SHL OPRD,CL
有符号数无符号数逻辑左移 移动一位后,若 CF与最高不相等,则 OF=1; 否则 OF=0
19
逻辑右移
格式:
SHR OPRD,I
SHR OPRD,CL
0 CF
无符号数的右移移动一位后,若次高位与最高位不相等,则 OF=1; 否则 OF=0
20
算术右移
格式:
SAR OPRD,I
SAR OPRD,CL
有符号数的右移
CF
21
非循环移位指令的应用
左移可实现乘法运算
右移可实现除法运算
例:
教材 p130
22
循环移位指令
不带进位位的循环移位
带进位位的循环移位
循环移位指令的格式、对操作数的要求与非循环移位指令相同左移 ROL
右移 ROR
左移 RCL
右移 RCR
23
不带进位位的循环移位
CF
CF
24
带进位位的循环移位
CF
CF
25
循环移位指令的应用
用于对某些位状态的测试;
高位部分和低位部分的交换;
与非循环移位指令一起组成 32位或更长字长数的移位。
26
程序例
MOV SI,1000H
MOV DI,3000H
MOV CX,4
BBB,MOV AL,[SI]
MOV BL,AL
AND AL,0FH
OR AL,30H
MOV [DI],AL
INC DI
MOV AL,BL
PUSH CX
MOV CL,4
SHR AL,CL
OR AL,30H
MOV [DI],AL
INC DI
INC SI
POP CX
DEC CX
JNZ BBB
HLT
程序功能?
27
程序例
将 1000H开始存放的四个压缩 BCD码转换为 ASCII码存放在 3000H开始的单元中去。
┇
┇
12H
34H
56H
78H
┇
1000H
3000H
28
四、串操作指令
针对数据块或字符串的操作;
可实现存储器到存储器的数据传送;
待操作的数据串称为源串,目标地址称为目标串。
29
串操作指令的特点
源串一般存放在数据段,偏移地址由 SI指定。
允许段重设;
目标串必须在附加段,偏移地址由 DI指定;
指令自动修改地址指针,修改方向由 DF决定。
DF=0 增地址方向; DF=1 减地址方向;
数据块长度值由 CX指定
可增加自动重复前缀以实现自动修改 CX内容。
30
串操作指令流程取源串地址取目标串地址设串长度传送一个字节或字修改地址指针修改串长度值传送完否?
31
重复前缀
REP 无条件重复
REPE 相等重复
REPZ 为零重复
REPNE 不相等重复
REPNZ 不为零重复条件重复
CX≠0
ZF=1
CX≠0
ZF=0
CX≠0 重复
32
串操作指令
串传送 MOVS
串比较 CMPS
串扫描 SCAS
串装入 LODS
串送存 STOS
33
串传送指令
格式:
MOVS OPRD1,OPRD2
MOVSB
MOVSW
串传送指令常与无条件重复前缀连用
34
串传送指令
对比用 MOV指令和 MOVS指令实现将
200个字节数据从内存的一个区域送到另一个区域的程序段。
35
串传送指令例
用串传送指令实现 200个字节数据的传送:
LEA SI,MEM1
LEA DI,MEM2
MOV CX,200
CLD
REP MOVSB
HLT
36
串比较指令
格式:
CMPS OPRD1,OPRD2
CMPSB
CMPSW
串比较指令常与条件重复前缀连用,指令的执行不改变操作数,仅影响标志位。
37
串比较指令例测试 200个字节数据是否传送正确:
LEA SI,MEM1
LEA DI,MEM2
MOV CX,200
CLD
REPE CMPSB
TEST CX,00FFH
JZ STOP
DEC SI
MOV AL,[SI]
MOV BX,SI
STOP,HLT
38
串扫描指令
格式:
SCAS OPRD
SCASB
SCASW
执行与 CMPS指令相似的操作,只是这里的源操作数是 AX或 AL
目 标操作数
39
串扫描指令的应用
常用于在指定存储区域中寻找某个关键字。
40
串装入指令
格式:
LODS OPRD
LODSB
LODSW
操作,对字节,AL ([DS:SI])
对 字,AX ([DS:SI])
源操作数
41
串装入指令
用于将内存某个区域的数据串依次装入累加器,以便显示或输出到接口。
LODS指令一般不加重复前缀。
42
串送存指令
格式:
STOS OPRD
STOSB
STOSW
操作,对字节,AL ([ES:DI])
对 字,AX ([ES:DI])
目 标操作数
43
串送存指令例 将内存某个区域清零
设计思想:
区域首地址送 ES,DI
串长度送 CX
置方向标志 DF
0送累加器 AL
执行串送存指令
p139
44
五、程序控制指令转移指令循环控制过程调用中断控制
45
1,转移指令无条件 转移指令无条件转移到目标地址,执行新的指令有条件转移指令在具备一定条件的情况下转移到目标地址通过修改指令的 偏移地址 或 段地址及偏移地址 实现程序的转移
46
无条件转移指令
格式:
JMP OPRD
目标地址与 JMP在同一代码段与 JMP不在同一代码段原则上可实现在整个内存空间的转移
47
无条件转移指令 段内转移转移的 目标地址 在当前代码段内指令中直接给出目标地址由指令中的寄存器或存储器操作数指出目标地址段内直接寻址 段内间接寻址
48
无条件段内转移
段内直接寻址
JMP Label
近地址标号
JMP
Label
┇
┇
┇
代码段位移量下一条要执行指令的偏移地址 =当前 IP+位移量
49
无条件段内转移
段内间接寻址
JMP BX
JMP WORD PTR[BX]
JMP
┇
┇
┇
代码段数据段
BX=1200
┇
XXH
XXH
IP
指令码
50
无条件转移指令 段间转移转移的 目标地址 不在 当前代码段内指令中直接给出目标地址由指令中的 32位存储器操作数指出目标地址段间直接寻址 段间间接寻址
51
无条件段间转移
段内直接寻址
JMP FAR Label
远地址标号
JMP
Label
┇
┇
┇
代码段
1
Label与
JMP之间的位移量代码段
2
XXH
XXH
XXH
XXH
IP
CS
52
无条件段间转移
段内间接寻址
JMP DWORD PTR[BX]
XXH
XXH
XXH
XXH
[BX]
IP
CS
JMP
┇
┇
┇
┇
指令码代码段
1
代码段
2
数据段
53
条件转移指令
在满足一定条件下,程序转移到目标地址继续执行
条件转移指令均为段内短转移,即转移范围为:
-128------+127
p142
54
2,循环控制指令
控制程序在以当前 IP为中心的 -128~
+127范围内循环执行;
循环次数由 CX寄存器指定。
LOOP
LOOPZ
LOOPNZ
55
无条件循环指令
格式:
LOOP LABEL
循环条件:
CX ≠ 0
操作:
DEC CX
JNZ 符号地址
56
条件循环指令
格式:
LOOPZ LABEL
LOOPE LABEL
循环条件:
CX ≠ 0 ZF=1
格式:
LOOPNZ LABEL
LOOPNE LABEL
循环条件:
CX ≠ 0 ZF=0
57
3,过程调用和返回段内调用段间调用段内直接调用段内间接调用段间直接调用段间间接调用
58
调用指令与转移指令的比较
用于调用一个子过程
调用前须保护断点地址
子过程执行结束后要返回原调用处继续执行原程序断点恢复
59
调用指令的执行过程
将调用指令的下一条指令的地址(断点)压入堆栈;
获取子过程的入口地址(子过程第 1条指令的偏移地址);
(执行子过程,含相应参数的保存及恢复);
将断点偏移地址由堆栈弹出,返回原程序。
60
段内调用
子过程与原调用程序在同一代码段,在调用之前只需保护断点的偏移地址
格式:
CALL NEAR PROC
近过程名断点入口地址
61
段内调用例
CALL TIMRE
CALL WORD PTR[SI]
直接调用间接调用
62
段间调用
子过程与原调用程序不在同一代码段,
在调用之前需保护断点的段基地址和偏移地址。 先将断点的 CS压栈,再压入 IP。
格式:
CALL FAR PROC
63
段间调用例
CALL FAR TIMRE
CALL DWORD PTR[SI]
64
返回指令
从堆栈中弹出断点地址,返回原程序。
格式:
RET
RET指令一般位于子程序的最后。
65
4.中断指令中断与过程调用:
中断是随机事件或异常事件引起,调用则是事先已在程序中安排好 ;
响应中断请求不仅要保护断点地址,还要保护
FLAGS内容;
调用指令在指令中直接给出子程序入口地址,
中断指令只给出中断向量码,入口地址则在向量码指向的内存单元中。
66
中断指令
格式:
INT n
说明:
nх4 =存放中断服务子程序入口地址的单元地址中断类型码
n=0? 255
n х4 XXH
XXH
XXH
XXH入口偏移地址 IP
入口段地址 CS
67
中断指令操作:
将 FLAGS压入堆栈;
将 INT指令下一条指令的 CS,IP压栈;
取中断服务程序入口地址。
68
中断指令例
INT 21H
IPL
IPH
CSL
CSH
SP=1200
FLAGSL
FLAGSH
SP=11FA
执行
INT指令后保护断点
69
中断指令例
执行 INT 21H指令后
IP=?
CS=?
21Hх4
=0084H 23H
11H
00H
20H
IP
CS
70
溢出中断指令
格式:
INTO
若 OF=1,则启动一个 类型为 4的中断过程,给出一个出错标志,如果 OF=0,不做任何操作。
INTO指令通常安排在有符号数加减运算指令之后。
相当于
INT 4
71
中断返回指令
格式:
IRET
中断服务程序的最后一条指令,负责恢复断点恢复标志寄存器内容
72
六、处理器控制指令对标志位的操作与外部设备的同步说明见
p151表
73
结束语:
第 3章掌握:
指令的格式及意义;
指令对操作数的要求及对标志位的影响;
指令的应用。
74
第 3章作业
3.2
3.5
3.7
3.9
3.11
指令系统第 2部分
2
三、逻辑运算和移位类逻辑运算移位操作与或非异或非循环移位循环移位逻辑移位算术移位不带进位位的移位带进位位的移位
3
1.逻辑运算
逻辑运算指令对操作数的要求大多与
MOV指令相同。,非,运算指令要求操作数不能是立即数;
除“非”运算指令外,其余指令的执行都会使标志位 OF=CF=0
4
“与”指令:
格式,AND OPRD1,OPRD2
操作,两操作数相,与,,结果送目标地址
5
“与”指令的应用
实现两操作数相与的运算;
使目标操作数的某些位不变,某些位清零;
在操作数不变的情况下使 CF和 OF清零。
实现手段:
6
“与”指令应用例
AND BL,[BX]
AND AL,0FH
AND AX,AX
7
“或”运算指令
格式,OR OPRD1,OPRD2
操作,两操作数相,或,,结果送目标地址
8
“或”指令的应用
实现两操作数相“或”的运算;
使某些位不变,某些位置,1”
在不改变操作数的情况下使 OF=CF=0
9
“或”指令的应用例
OR AX,[DI]
OR CL,0FH
OR AX,AX
OR AL,AL
JPE GOON
OR AL,80H
GOON,….
偶校验转移
( PF=1)
将一个二进制数 9变为字符
‘ 9’
?
10
“非”运算指令
格式,NOT OPRD
操作:操作数按位取反再送回原地址
指令中的操作数不能是立即数
指令的执行对标志位无影响
例,NOT BYTE PTR[BX]
11
“异或”运算指令
格式,XOR OPRD1,OPRD2
操作,两操作数相,异或,,结果送目标地址
两操作数自身相异或,结果
XOR AX,AX
12
“测试”指令
格式,TEST OPRD1,OPRD2
操作,执行“与”运算,但运算的结果不送回目标地址。
应用:常用于测试某些位的状态
13
“测试”指令例
从地址为 38F0H的端口中读入一个字节数,
如果该数的 bit1位为 1,则可从 38FEH端口将 DATA为首地址的一个字输出,否则就不能进行数据传送。
编写相应的程序段。
14
“测试”指令例开 始取待输出数的偏移地址读入状态字测试 bit1位状态
Bit1=1?
取输入口地址取输出口地址输出一个字
N
Y
15
“测试”指令例
LEA SI,DATA
MOV DX,38F0H
WATT,IN AL,DX
TEST AL,02H
JZ WATT ; ZF=1转移
MOV DX,38FEH
MOV AX,[SI]
OUT DX,AX
16
2,移位指令非循环移位指令循环移位指令
移动一位时由指令直接给出;移动两位及以上,则移位次数由 CL指定。
17
非循环移位指令
逻辑左移
算术左移
逻辑右移
算术右移
18
算术左移和逻辑左移
格式:
SAL OPRD,1
SAL OPRD,CL
SHL OPRD,1
SHL OPRD,CL
有符号数无符号数逻辑左移 移动一位后,若 CF与最高不相等,则 OF=1; 否则 OF=0
19
逻辑右移
格式:
SHR OPRD,I
SHR OPRD,CL
0 CF
无符号数的右移移动一位后,若次高位与最高位不相等,则 OF=1; 否则 OF=0
20
算术右移
格式:
SAR OPRD,I
SAR OPRD,CL
有符号数的右移
CF
21
非循环移位指令的应用
左移可实现乘法运算
右移可实现除法运算
例:
教材 p130
22
循环移位指令
不带进位位的循环移位
带进位位的循环移位
循环移位指令的格式、对操作数的要求与非循环移位指令相同左移 ROL
右移 ROR
左移 RCL
右移 RCR
23
不带进位位的循环移位
CF
CF
24
带进位位的循环移位
CF
CF
25
循环移位指令的应用
用于对某些位状态的测试;
高位部分和低位部分的交换;
与非循环移位指令一起组成 32位或更长字长数的移位。
26
程序例
MOV SI,1000H
MOV DI,3000H
MOV CX,4
BBB,MOV AL,[SI]
MOV BL,AL
AND AL,0FH
OR AL,30H
MOV [DI],AL
INC DI
MOV AL,BL
PUSH CX
MOV CL,4
SHR AL,CL
OR AL,30H
MOV [DI],AL
INC DI
INC SI
POP CX
DEC CX
JNZ BBB
HLT
程序功能?
27
程序例
将 1000H开始存放的四个压缩 BCD码转换为 ASCII码存放在 3000H开始的单元中去。
┇
┇
12H
34H
56H
78H
┇
1000H
3000H
28
四、串操作指令
针对数据块或字符串的操作;
可实现存储器到存储器的数据传送;
待操作的数据串称为源串,目标地址称为目标串。
29
串操作指令的特点
源串一般存放在数据段,偏移地址由 SI指定。
允许段重设;
目标串必须在附加段,偏移地址由 DI指定;
指令自动修改地址指针,修改方向由 DF决定。
DF=0 增地址方向; DF=1 减地址方向;
数据块长度值由 CX指定
可增加自动重复前缀以实现自动修改 CX内容。
30
串操作指令流程取源串地址取目标串地址设串长度传送一个字节或字修改地址指针修改串长度值传送完否?
31
重复前缀
REP 无条件重复
REPE 相等重复
REPZ 为零重复
REPNE 不相等重复
REPNZ 不为零重复条件重复
CX≠0
ZF=1
CX≠0
ZF=0
CX≠0 重复
32
串操作指令
串传送 MOVS
串比较 CMPS
串扫描 SCAS
串装入 LODS
串送存 STOS
33
串传送指令
格式:
MOVS OPRD1,OPRD2
MOVSB
MOVSW
串传送指令常与无条件重复前缀连用
34
串传送指令
对比用 MOV指令和 MOVS指令实现将
200个字节数据从内存的一个区域送到另一个区域的程序段。
35
串传送指令例
用串传送指令实现 200个字节数据的传送:
LEA SI,MEM1
LEA DI,MEM2
MOV CX,200
CLD
REP MOVSB
HLT
36
串比较指令
格式:
CMPS OPRD1,OPRD2
CMPSB
CMPSW
串比较指令常与条件重复前缀连用,指令的执行不改变操作数,仅影响标志位。
37
串比较指令例测试 200个字节数据是否传送正确:
LEA SI,MEM1
LEA DI,MEM2
MOV CX,200
CLD
REPE CMPSB
TEST CX,00FFH
JZ STOP
DEC SI
MOV AL,[SI]
MOV BX,SI
STOP,HLT
38
串扫描指令
格式:
SCAS OPRD
SCASB
SCASW
执行与 CMPS指令相似的操作,只是这里的源操作数是 AX或 AL
目 标操作数
39
串扫描指令的应用
常用于在指定存储区域中寻找某个关键字。
40
串装入指令
格式:
LODS OPRD
LODSB
LODSW
操作,对字节,AL ([DS:SI])
对 字,AX ([DS:SI])
源操作数
41
串装入指令
用于将内存某个区域的数据串依次装入累加器,以便显示或输出到接口。
LODS指令一般不加重复前缀。
42
串送存指令
格式:
STOS OPRD
STOSB
STOSW
操作,对字节,AL ([ES:DI])
对 字,AX ([ES:DI])
目 标操作数
43
串送存指令例 将内存某个区域清零
设计思想:
区域首地址送 ES,DI
串长度送 CX
置方向标志 DF
0送累加器 AL
执行串送存指令
p139
44
五、程序控制指令转移指令循环控制过程调用中断控制
45
1,转移指令无条件 转移指令无条件转移到目标地址,执行新的指令有条件转移指令在具备一定条件的情况下转移到目标地址通过修改指令的 偏移地址 或 段地址及偏移地址 实现程序的转移
46
无条件转移指令
格式:
JMP OPRD
目标地址与 JMP在同一代码段与 JMP不在同一代码段原则上可实现在整个内存空间的转移
47
无条件转移指令 段内转移转移的 目标地址 在当前代码段内指令中直接给出目标地址由指令中的寄存器或存储器操作数指出目标地址段内直接寻址 段内间接寻址
48
无条件段内转移
段内直接寻址
JMP Label
近地址标号
JMP
Label
┇
┇
┇
代码段位移量下一条要执行指令的偏移地址 =当前 IP+位移量
49
无条件段内转移
段内间接寻址
JMP BX
JMP WORD PTR[BX]
JMP
┇
┇
┇
代码段数据段
BX=1200
┇
XXH
XXH
IP
指令码
50
无条件转移指令 段间转移转移的 目标地址 不在 当前代码段内指令中直接给出目标地址由指令中的 32位存储器操作数指出目标地址段间直接寻址 段间间接寻址
51
无条件段间转移
段内直接寻址
JMP FAR Label
远地址标号
JMP
Label
┇
┇
┇
代码段
1
Label与
JMP之间的位移量代码段
2
XXH
XXH
XXH
XXH
IP
CS
52
无条件段间转移
段内间接寻址
JMP DWORD PTR[BX]
XXH
XXH
XXH
XXH
[BX]
IP
CS
JMP
┇
┇
┇
┇
指令码代码段
1
代码段
2
数据段
53
条件转移指令
在满足一定条件下,程序转移到目标地址继续执行
条件转移指令均为段内短转移,即转移范围为:
-128------+127
p142
54
2,循环控制指令
控制程序在以当前 IP为中心的 -128~
+127范围内循环执行;
循环次数由 CX寄存器指定。
LOOP
LOOPZ
LOOPNZ
55
无条件循环指令
格式:
LOOP LABEL
循环条件:
CX ≠ 0
操作:
DEC CX
JNZ 符号地址
56
条件循环指令
格式:
LOOPZ LABEL
LOOPE LABEL
循环条件:
CX ≠ 0 ZF=1
格式:
LOOPNZ LABEL
LOOPNE LABEL
循环条件:
CX ≠ 0 ZF=0
57
3,过程调用和返回段内调用段间调用段内直接调用段内间接调用段间直接调用段间间接调用
58
调用指令与转移指令的比较
用于调用一个子过程
调用前须保护断点地址
子过程执行结束后要返回原调用处继续执行原程序断点恢复
59
调用指令的执行过程
将调用指令的下一条指令的地址(断点)压入堆栈;
获取子过程的入口地址(子过程第 1条指令的偏移地址);
(执行子过程,含相应参数的保存及恢复);
将断点偏移地址由堆栈弹出,返回原程序。
60
段内调用
子过程与原调用程序在同一代码段,在调用之前只需保护断点的偏移地址
格式:
CALL NEAR PROC
近过程名断点入口地址
61
段内调用例
CALL TIMRE
CALL WORD PTR[SI]
直接调用间接调用
62
段间调用
子过程与原调用程序不在同一代码段,
在调用之前需保护断点的段基地址和偏移地址。 先将断点的 CS压栈,再压入 IP。
格式:
CALL FAR PROC
63
段间调用例
CALL FAR TIMRE
CALL DWORD PTR[SI]
64
返回指令
从堆栈中弹出断点地址,返回原程序。
格式:
RET
RET指令一般位于子程序的最后。
65
4.中断指令中断与过程调用:
中断是随机事件或异常事件引起,调用则是事先已在程序中安排好 ;
响应中断请求不仅要保护断点地址,还要保护
FLAGS内容;
调用指令在指令中直接给出子程序入口地址,
中断指令只给出中断向量码,入口地址则在向量码指向的内存单元中。
66
中断指令
格式:
INT n
说明:
nх4 =存放中断服务子程序入口地址的单元地址中断类型码
n=0? 255
n х4 XXH
XXH
XXH
XXH入口偏移地址 IP
入口段地址 CS
67
中断指令操作:
将 FLAGS压入堆栈;
将 INT指令下一条指令的 CS,IP压栈;
取中断服务程序入口地址。
68
中断指令例
INT 21H
IPL
IPH
CSL
CSH
SP=1200
FLAGSL
FLAGSH
SP=11FA
执行
INT指令后保护断点
69
中断指令例
执行 INT 21H指令后
IP=?
CS=?
21Hх4
=0084H 23H
11H
00H
20H
IP
CS
70
溢出中断指令
格式:
INTO
若 OF=1,则启动一个 类型为 4的中断过程,给出一个出错标志,如果 OF=0,不做任何操作。
INTO指令通常安排在有符号数加减运算指令之后。
相当于
INT 4
71
中断返回指令
格式:
IRET
中断服务程序的最后一条指令,负责恢复断点恢复标志寄存器内容
72
六、处理器控制指令对标志位的操作与外部设备的同步说明见
p151表
73
结束语:
第 3章掌握:
指令的格式及意义;
指令对操作数的要求及对标志位的影响;
指令的应用。
74
第 3章作业
3.2
3.5
3.7
3.9
3.11