1、第第3章章 8086的寻址方式和指令系统的寻址方式和指令系统 3.1 8086的寻址方式的寻址方式3.2 8086指令格式及数据类型指令格式及数据类型3.3 8086的指令集的指令集串处理指令命令命令含义含义时钟数时钟数MOVSB/MOVSW字符串传送17CMPSB/CMPSW字符串比较22SCASB/SCASW字符串扫描15LODSB/LODSW字符串装入12STOSB/STOSW字符串存储11REP无条件重复2REPE/REPZ相等/结果为零重复2REPNE/REPNZ不相等/非零重复2字符串 一系列存放在存储器中的字或字节数据,字符串长度可达64K字节。字符串元素 组成字符串的字节或字。
2、每种字符串指令对字符串元素只进行同一种操作。字符串操作指令 对字符串进行的传送、比较、扫描、存储及装入等5种操作。相关概念源串 起始地址(或末地址)为DS:SI。源串允许使用段超越前缀来修改段地址。目的串 起始地址(或末地址)为ES:DI。目的串不允许使用段超越前缀修改ES。如果要在同一段内进行串运算,必须使DS和ES指向同一段。指针 每执行一次字符串指令,指针SI和DI会自动修改,以指向下一个待操作单元。隐含约定DF标志:控制字符串处理的方向。标志:控制字符串处理的方向。 DF0为递增方向为递增方向。DS:SI指向源串首地址,每执指向源串首地址,每执行一次串操作:字节串操作时,行一次串操作:
3、字节串操作时,SI、DI分别增分别增1;字串操;字串操作时,作时,SI和和DI分别增分别增2; DF1为递减方向为递减方向。DS:SI指向源串末地址,每执指向源串末地址,每执行一次串操作:字节串操作时减行一次串操作:字节串操作时减1;字串操作时减;字串操作时减2。 STD使使DF置置1,CLD将将DF清清0。串长度串长度 要处理的字符串长度要处理的字符串长度(字节或字数字节或字数)放在放在CX寄存器中。寄存器中。隐含约定功能 在基本指令前加重复前缀,可加快串运算指令的执行速度。每重复执行一次,地址指针SI和DI按方向标志自动修改,CX的值自动减1。类型和格式 REP:无条件重复,重复操作直到C
4、X0为止。 REPE/REPZ:相等/结果为零则重复,重复直到ZF0或CX0为止。 REPNE/REPNZ :不相等/结果非零则重复,重复直到ZF1或CX0为止。重复前缀带有重复前缀的串指令执行过程中允许有中断进入。带有重复前缀的串指令执行过程中允许有中断进入。MOVS字符串传送指令MOVS字符串传送指令 (Move String)格式 MOVS 目的串,源串。 功能 SI作指针的源串中的一个字节或字,DI作指针的目的串;自动修改指针SI和DI。应用l解决MOV指令不能直接在存储单元间进行数据传送的问题。l若使用重复前缀,还可以利用一条指令传送一批数据。MOVS字符串传送指令举例 要求把数据段
5、中以SRC_MESS为偏移地址的一串字符“HELLO!”,传送到附加段中以NEW_LOC开始的单元中。DATA SEGMENT ;数据段;数据段 SRC_MESS DB HELLO! ;源串;源串 DATA ENDS;EXTRA SEGMENT ;附加段;附加段 NEW_LOC DB 6 DUP(?) ;存放目的串;存放目的串 EXTRA ENDS;CODE SEGMENT ASSUME CS:CD, DS:DATA, ES:EXTRASTART: MOV AX,DATA MOV DS,AX ;DS数据段段址数据段段址 MOV AX,EXTRA MOV ES,AX ;ES附加段段址附加段段址
6、LEA SI,SRC_MESS ;SI指向源串偏移地址指向源串偏移地址 LEA DI,NEW_LOC ;DI指向目的串偏移地址指向目的串偏移地址 MOV CX,6 ;CX作串长度计数器作串长度计数器 CLD ;清方向标志,地址增量;清方向标志,地址增量 REP MOVSB ;重复传送串中各字节,直到;重复传送串中各字节,直到CX=0 Code ENDS End startCMPS字符串比较指令CMPS字符串比较指令 (Compare String)格式格式 CMPS 目的串,源串。 功能功能 SI作指针的源串减去DI作指针的目的串数据,结果反映在标志位上;两个数据串的原始值不变;源串和目的串指
7、针自动修改,指向下一对待比较的串。常用来比较两个字符串是否相等。CMPS字符串比较指令加重复前缀lREPE/REPZ CMPS ;直至CX0(比完了)或ZF0(两串不相等)时停止操作。lREPNE/REPNZ CMP;直至CX0(比完了)或ZF1(两串相等)时停止比较。SCAS字符串扫描指令SCAS字符串扫描指令 (Scan String)格式 SCAS 目的串。 功能 AL/AX(字节/字操作)内容减去ES:DI中的串元素,结果反映在标志位上,源操作数不变,操作后目的串指针会自动修改,指向下一个待搜索的串元素。应用l利用SCAS指令,可在内存中搜索关键字。指令执行前,必须事先将关键字存在AL
8、(字节)或AX(字)中,才能用SCAS指令进行搜索。l SCAS指令可以加重复前缀。SCAS字符串扫描指令举例 在某一字符串中搜寻是否有字符A,若有,则把搜索次数记下来,送到BX寄存器中,若没有查到,则将BX寄存器清0。设字符串起始地址STRING的偏移地址为0,字符串长度为CX。解:解: MOV DI,OFFSET STRING ;DI字符串偏移地址字符串偏移地址 MOV CX,COUNT ;CX字符串长度字符串长度 MOV AL,A ;AL关键字关键字A的的ASCII码码 CLD ;清标志方向;清标志方向 REPNE SCASB ;CX0(没查完没查完)和和ZF=0(不相等不相等)时重复时
9、重复 JZ FIND ;若;若ZF=1,表示已搜到,转出,表示已搜到,转出 MOV DI,0 ;若;若ZF=0,表示没搜到,表示没搜到,DI0FIND:MOV BX,DI ;BX搜索次数搜索次数 HLTLODS取字符串指令LODS取字符串指令 (Load String)格式格式 LODS 源串。 功能功能 DS:SI中的串元素AL/AX(字节/字操作)中,修改SI,以指向串中的下一个元素。SI的修改量由方向标志DF和源串的类型确定。STOS存字符串指令STOS存字符串指令 (Store String)格式格式 STOS 目的串。 功能功能 AL/AX(字节/字操作)的一个字节或字ES:DI所指
10、的目的串;修改DI,以指向串中的下一个单元。 关于重复前缀:“REP STOS” ,可用累加器中的常数,对数据串初始化。如初始化为全0串。控制转移指令作用 改变CS和IP的值,从而改变指令的执行顺序。 类型l无条件转移和过程调用指令l条件转移指令l条件循环控制指令l中断指令控制转移指令(28条)无条件转移和过程调用条件转移指令JMP无条件转移JZ/JE等等10条指令条指令直接标志转移CALL过程调用JA/JNBE等等8条指令条指令间接标志转移RET过程返回条件循环控制中断指令LOOPCX0循环INT中断LOOPE/LOOPZCX0和和ZF=1INTO溢出中断LOOPNE/LOOPNZ CX0和
11、和ZF=0IRET中断返回JCXZCX=0则转移无条件转移和过程控制指令命令命令含义含义时钟数时钟数JMP无条件转移1124+EACALL过程调用1637+EARET过程返回1624JMP无条件转移指令JMP无条件转移指令 (Jump)格式 JMP 目的。 功能 程序无条件地转移到指定的目的地址去执行。转移类型l段内转移或近(NEAR)转移 转移指令的目的地址和JMP指令在同一代码段中,转移时,仅改变IP寄存器的内容,段地址CS的值不变。l段间转移,又称为远(FAR)转移 转移时,CS和IP的值都要改变,转到另一代码段去执行。JMP无条件转移指令两种提供地址的方式 l直接转移 指令码中直接给出
12、转移的目的地址,目的操作数用一个标号来表示,它又可分为段内直接转移和段间直接转移。l间接转移 目的地址包含在某个16位寄存器或存储单元中,CPU根据寄存器或存储器寻址方式,间接求出转移地址。JMP无条件转移指令无条件转移指令的类型和方式 类型类型 方式方式寻址目标寻址目标指令举例指令举例段内转移直接 立即短转移(8位)JMP SHORT PROG_S直接 立即近转移(16位) JMP NEAR PTR ROG_N间接 寄存器(16位)JMP BX间接 存储器(16位)JMP WORD PTR 5BX段间转移直接 立即转移(32位)JMP FAR PTR PROG_F间接 存储器(32位)JMP
13、 DWORD PTR DIJMP无条件转移指令段内直接转移指令格式 JMP SHORT 标号 JMP NEAR PTR 标号(或:JMP 标号)。 特点l目的操作数均用标号表示;l程序转向的有效地址当前IP寄存器的内容8/16位位移量(DISP)。16位:近转移,范围在-32768+32767个字节之间;8位:短转移,范围在-128+127个字节之间;JMP无条件转移指令段内间接转移指令格式 JMP 16位寄存器/字存储单元特点l16位有效地址存放在一个16位寄存器、字存储器单元;l寄存器间接寻址:有效地址存放在寄存器中,即IP 寄存器内容;l存储单元间接寻址:有效地址存放在存储单元中,即IP
14、字存储单元内容;l要计算出存储单元的物理地址,再从该地址处取一个字送到IP。段内间接转移指令【例】JMP BX 解:若该指令执行前BX4500H; 则指令执行时,将当前IP修改成4500H; 程序转向段内偏移地址为4500H处执行。【例】JMP WORD PTR 5BX 解:设指令执行前,DS2000H,BX100H,(20105H)04F0H;则指令执行后,IP(20000H+100H+5H)(20105H)04F0H;转到代码段内偏移地址为04F0H处执行。JMP无条件转移指令段间直接(远)转移指令格式 JMP FAR 标号特点 用远标号直接给出了转向的段地址和偏移量,即 IP 标号的段内
15、偏移量 CS 标号所在段的段地址段间直接(远)转移指令【例】 JMP FAR PTR PROG_F 解:设标号PROG_F所在段的基地址3500H,偏移地址080AH; 则指令执行后,IP080AH,CS3500H; 程序转到3500:080AH处执行。JMP无条件转移指令段间间接转移指令格式 JMP DWORD PTR存储单元特点 目的地址的段地址和偏移量放在存储器中的4个连续地址单元中:前两个字节为偏移量;后两个字节为段地址。指令中给出存放目标地址的存储单元的首字节地址值;段间间接转移指令【例】 JMP DWORD PTR SI+0125H 设指令执行前:CS1200H,IP05H,DS2
16、500H,SI1300H;内存单元(26425H)4500H,(26427H)32F0H。 解:目的操作数地址DS16SIDISP 25000H1300H0125H 26425H 从单元中取出转移地址,赋与IP和CS:IP4500H,CS32F0H;程序转到32F0:4500H处执行。过程调用及返回指令 过程:程序中能完成特定功能而又独立的模块,也称子程序。 过程嵌套:在过程运行中又去调用另一个过程。 过程调用和返回指令的格式:CALL 过程名 RET 近过程调用:调用指令CALL和被调用的过程在同一代码段中。 远过程调用:两者在不同代码段中。CALL过程调用指令CALL过程调用指令(Call
17、)格式 Call 过程名功能 将当前主程序的返回地址压入堆栈保存,转到子程序入口地址执行子程序。 近调用时:IP入栈;远调用时,CS和IP入栈。RET过程返回指令RET过程返回指令(Return)格式 RET。功能 从堆栈中弹出返回地址,使程序返回主程序继续执行。l如果从近过程返回:从栈中弹出一个字 IP,并且使SP SP+2。l如果从远过程返回:先从栈中弹出一个字 IP,并且使SP SP+2;再从个字栈中弹出一个字CS,并使SP SP+2。RET n过程返回指令RET n过程返回指令(Return)格式 RET n。功能 n称为弹出值,CPU在弹出返回地址后,再从堆栈中弹出n个字节的数据。其
18、值可以是0000-0FFFFH范围内的任何一个偶数。RET n过程返回指令用途 l 调用过程的主程序通过堆栈向过程传递参数。l参数在调用过程前推入堆栈,过程运行中通过堆栈指针寻找;l过程返回时,用RET n把它们从栈中弹出。过程调用与返回指令寻址方式l段内直接调用;l段内间接调用;l段间直接调用;l段间间接调用过程调用与返回指令段内直接调用【例【例】 CALL PROG_N ;PROG_N是一个近标号 CS=2000H,IP=1050H,SS=5000H,此指令含3字节。SP=0100H,PROG_N与与CALL指令之间的距离等于1234H(即即DISP1234H)。 CALL(机器码E834
19、12)执行过程。SP SP-2,即新的,即新的SP0100H-200FEH;返回地址返回地址IPIP入栈。返回地址应该为入栈。返回地址应该为CALLCALL执行完后的执行完后的地址,即地址,即IP=IP+3=1053HIP=IP+3=1053H,将此数入栈;,将此数入栈;计算程序入口地址计算程序入口地址IP=IP+DISP=1053+1234=2287HIP=IP+DISP=1053+1234=2287H。:1053HCALL段内直接调用 CS=2000H,IP=1050H,SS=5000HSP SP-2,即新的,即新的SP0100H-200FEH;返回地址返回地址IP入栈。返入栈。返回地址应
20、该为回地址应该为CALL执行完后的地址,即执行完后的地址,即IP=IP+3=1053H,将,将此数入栈;此数入栈;计算程序入口地址计算程序入口地址IP=IP+DISP=1053+1234=2287H。10531234E85000:0100H2000:1050H:1053H:2287HSP=0100HSP=00FEH过程调用与返回指令段内间接调用 操作步骤:SPSP-2,IP入栈,入栈,IP EA(从目的操作数计算)【例】 CALL BX DS1000H,BX200H,SI300H,(10500H)3210H,EA0200H。【例】 CALL WORD PTR BX+SI EA(16DSBXSI
21、) (10000H0200H0300H)=(10500H)3210H过程调用与返回指令段间直接调用l计算返回IP;lSPSP-2,CS入栈;lSPSP-2,IP入栈;l 转子程序入口地址,执行子程序。 Ret时,出栈的顺序为IP,CS【例】 CALL FAR PTR PROG_F;PROG_F是一个远标号。过程调用与返回指令段间间接调用 这类调用指令的操作数必须是存储单元,从该单元 开始存放的双字中,第一个字存放的是IP,后一个字存放的为CS。 【例】 CALL DWORD PTR BX解:设DS1000H,BX200H,(10200H)31F4H,(10202)5200H。CALL指令的执行
22、过程:l SP SP-2,CS入栈l SP SP-2,IP入栈l IP (10200H)31F4H,CS (10202)5200Hl 转子程序入口,CS:IP=5200H:31F4H条件转移指令条件转移指令(ConditionaI Transfer) 根据上一条指令执行后的状态标志作为判别测试条件来决定是否转移。l条件转移均为段内短转移。l目的地址当前IP值8位相对位移量(-128127 )。 指令格式:条件操作符 标号条件转移指令共有18条,分直接与间接标志转移指令直接标志转移指令 在指令助记符中直接给出标志状态的测试条件:以标志的10种状态为判断的条件。指令助记符指令助记符测试条件测试条件
23、指令功能指令功能JCCF=1有进位转移JNCCF=0无进位转移JZ/JE ZF=1结果为零/相等转移JNZ/JNEZF=0不为零/相等转移JSSF=1符号为负转移JNSSF=0符号为正转移JOOF=1溢出转移JNOOF=0无溢出转移JP/JPEPF=1奇偶位为1/为偶转移JNP/JPOPF=0奇偶位为0/为奇转移直接标志转移指令【例】 求AL和BL寄存器中的两数之和,若有进位,则AH置1,否则AH清0解:可用如下程序段来实现该操作: ADD AL,BL ;两数相加 JC NEXT ;若有进位,转NEXT MOV AH,0 ;无进位,AH=0 JMP CONT ;往下执行NEXT: MOV AH
24、,1 ;有进位,AH置1CONT: ;程序继续进行间接标志转移指令 指令的助记符中不直接给出标志状态位的测试条件,而是标志的状态组合作为测试的条件。指令应用:通常放在比较指令CMP之后,以比较两个数的大小。l无符号数比较测试指令中 指令助记符中的“A”Above,“B”Below;l带符号数比较测试指令中,指令助记符中的 “G”(Great than)表示大于,“L”(Less than)表示小于。间接标志转移指令类别类别指令助记符指令助记符测试条件测试条件指令功能指令功能无符号数比较测试JA/JNBECF ZF =0高于/不低于等于转移JAE/JNBCF=0高于等于/不低于转移JB/JNAE
25、CF=1低于/不高于等于转移JBE/JNACF ZF=1低于等于/不高于转移带符号数比较测试JG/JNLE(SF OF) ZF=0 大于/不小于等于转移JGE/JNLSF OF =0大于等于/不小于转移JL/JNGESF OF =1小于/不大于等于转移JLE/JNG(SF OF) ZF=1 小于等于/不大于转移间接标志转移指令【例】 设某个学生的英语成绩已存放在AL寄存器中,若低于60分,则打印F(FAIL);若高于或等于80分,则打印G(GOOD);当在60分和80分之间时,打印P(PASS)。程序程序: CMP AL,60 ;与;与60分比较分比较 JB FAIL ;60,转,转FAIL
26、CMP AL,80 ;60,与,与80分比较分比较 JAE GOOD ;80,转,转GOOD MOV AL,P ;其它,将;其它,将ALP JMP PRINT ;转打印程序转打印程序 FAIL: MOV AL,F ; ALF JMP PRINT ;转打印程序转打印程序GOOD: MOV AL,G ; ALGPRINT: ;打印存在;打印存在AL中的字符中的字符条件循环控制指令命令命令含义含义时钟数时钟数LOOPCX0循环17/5LOOPE/LOOPZCX0和ZF=1循环18/6LOOPNE/LOOPNZCX0和ZF=0循环19/5JCXZCX=0则转移18/6条件循环控制指令特点:l是一组增强
27、型的条件转移指令,控制程序段的重复执行,重复次数存于CX寄存器中。l指令的字节数均为2,第一字节是操作码,第二字节是 8 位偏移量,转移的目标都是短标号。l循环指令中的偏移量都是负值。l循环控制指令均不影响任何标志。LOOP循环指令LOOP循环指令(Loop)格式 Loop 短标号。循环次数先放在CX中。功能 控制重复执行一系列指令,重复次数放在CX寄存器中,每执行一次LOOP指令,CX自动减1。如果减1后CX0,则转移到指令中所给定的标号处继续循环;若自动减1后CX0,则结束循环。 LOOP指令和以下两条指令可以相互替换。 DEC CX;JNZ 标号。LOOPE/LOOPZ相等或结果为零时循
28、环指令LOOPE/LOOPZ指令(Loop if Equal/Zero)格式 LOOPE/LOOPZ 标号。功能lLOOPE是相等时循环;lLOOPZ是结果为零时循环;l指令执行前,先将重复次数送到CX中,每执行一次指令,CX自动减1,若减1后后CX0和ZF1,则转到指令所指定的标号处重复执行;若CX0或或ZF0,便退出循环。LOOPNE/LOOPNZ不相等或结果为不零时循环指令LOOPNE/LOOPNZ指令 Loop if not Equal/ not Zero格式 LOOPNE/LOOPNZ 标号。标号。功能lLOOPNE是不相等时循环;lLOOPNZ是结果不为零时循环;l指令执行前,先将
29、重复次数送到CX中,每执行一次指令,CX自动减1,若减1后后CX0和ZF0,则转到指令所指定的标号处重复执行;若CX0或ZF1,便退出循环。JCXZ若CX为0跳转指令JCXZ若CX为0跳转指令 (Jump if CX Zero)格式 JCXZ 标号。标号。功能l若CX寄存器为零,则转移到指令中标号所指定的地址处,它不对CX寄存器进行自动减1的操作。l主要用在循环程序开始处,为跳过循环,把CX寄存器清零。中断指令命令命令含义含义时钟数时钟数INT中断5152INTO溢出中断52IRET中断返回24中断定义 计算机暂时中止当前程序的运行,执行中断服务程序去为临时发生的事件服务,执行完毕后,返回正常
30、程序继续运行,这个过程称为中断。中断源中断源外部中断外部中断内部中断内部中断引脚引脚NMI引入,需马上响应引入,需马上响应引脚引脚INTR引入,引入,IF=1,允许响应,允许响应意外情况出现的中断意外情况出现的中断中断指令中断指令INT n中断中断过程 执行中断前,必须做现场的保护工作,以确保中断执行完后能返回主程序继续执行,中断过程:l断点(CS,IP值)、标志寄存器的值入栈保护l取入口地址(中断类型4,得到中断向量的地址)l执行中断服务程序l执行中断返回指令IRET,从堆栈中恢复中断前CPU的状态和断点。中断中断向量表 l低2字节存放中断服务程序入口地址的偏移量IP;l高2字节存放中断服务
31、程序入口地址的段地址CS;l中断服务程序入口地址中断类型4;类型0的中断服务程序入口地址类型1的中断服务程序入口地址类型2的中断服务程序入口地址类型255的中断服务程序入口地址00000H00004H00008H003FCH专用中断5个专用中断除法错中断(类型0):除数为0;商超过范围单步中断(类型1):单步标志TF置1;不可屏蔽中断(类型2):NMI引脚上接收到由低变高的电平变化;断点中断(类型3):调试程序时,程序执行到断点时便产生中断;溢出中断(类型4):溢出标志OF置l,溢出中断指令INTO产生;除单步中断外,都不能被屏蔽,不受中断允许标志IF的控制INT n软件中断指令INT n软件
32、中断指令 (Interrupt)格式 INT n。N为中断类型号,范围为0255。CPU执行INT n的过程l标志寄存器的内容入栈;l当前断点的段基地址CS、偏移地址IP入栈;l清除中断标志IF、单步标志TF ;l将中断类型号n乘以4,找到中断服务程序的入口地址表的表头地址,获得中断服务程序的入口地址,置入CS和IP寄存器转到相应中断服务程序。INTO溢出中断指令INTO溢出中断指令 (Interrupt On overflow)格式 INTO。功能 当带符号数进行算术运算时,若溢出标志OF1,则溢出中断指令INTO产生类型为4的中断,若OF=0,则INTO指令不产生中断,CPU继续执行主程序
33、。 在带符号加减法运算之后必须安排一条INTO指令。以保证出现溢出时能及时向CPU提出中断请求并进行处理,否则,即使出现溢出也不会向CPU发中断申请。IRET中断返回指令IRET中断返回指令 (Interrupt Return)格式 IRET。功能 实现中断返回,安排在中断服务程序的结束处。执行过程l首先从堆栈中依次弹出程序断点,送到IP和CS寄存器中;l接着弹出标志寄存器的内容,送回标志寄存器;lCPU按CS:IP的值返回断点,继续执行原来被中断的程序。处理器控制指令标志控制指令 用于某些标志位的清零与设置。外部同步指令 与协处理器同步工作的指令,以便共享系统资源。停机指令和空操作指令 标志
34、控制指令命令命令含义含义时钟数时钟数CLC进位标志位CF清零2CMC进位标志位CF取反2STC进位标志位CF置12CLD方向标志位DF清零2STD方向标志位DF置12CLI中断标志位IF清零2STI中断标志位IF置12外部同步指令命令命令含义含义时钟数时钟数ESC换码指令8+EAWAIT等待指令3LOCK封锁总线指令2 使CPU与其它协处理器同步工作的指令,用于多处理机;指令执行后均不影响标志位。共3条。ESC换码指令ESC换码指令 (Escape)格式 ESC MEN。Men为操作数地址功能 用于实现8086对8087协处理器的控制。8087只处理与自己相关的ESC指令。执行指令时,8087
35、的BUSY引脚变成高电平并送到与之相连的8086的TEST#引脚上。 指令执行时,把一个指定的存储单元的内容送到DB上,由协处理器获取后,完成相应的操作。WAIT等待指令WAIT等待指令 (Wait)格式 WAIT。功能 循环测试TEST#直到变成低电平时退出wait状态。用途 wait通常跟在ESC指令之后,CPU执行ESC指令后,表示8086处于等待状态,测试TEST#直到低电平方退出wait状态执行下条指令。LOCK封锁总线指令LOCK封锁总线指令 (Lock BUS) 是一种前缀,加在指令的前端,用来维持8086的总线封锁信号LOCK#有效,带有LOCK前缀的指令在执行过程中,禁止其它
36、协处理器使用总线。停机指令和空操作指令HLT停机指令 (Halt) CPU进入暂停状态,不进行任何操作。下列情况发生时,CPU才脱离暂停状态:l在RESET线上加复位信号;l在NMI引脚上出现中断请求信号;l在允许中断的情况下,在INTR引脚上出现中断请求信号;停机指令和空操作指令NOP空操作指令 (No Operation) 单字节指令,执行时需耗费3个时钟周期的时间,但不完成任何操作。常在循环等操作中增加延时,或在调试程序时使用空操作指令。TEST设CS=1200H,IP=0100H,SS=5500H,SP=0400H,DS=2000H,SI=3000H,BX=0300H,(,(20300H)=4800H,(,(20302H)=00FFH,PROG_N标号的地址为1200:0278H,PROG_F标号的地址为3400:0ABCH。说明下面每条指令执行完后程序将分别转移到何处执行?JMP PROG_N JMP BXJMP BX JMP FAR PROG_F JMP DWORD PTRBX小结 串处理指令的分类及具体功能 无条件转移指令的功能 直接标志转移指令的功能(重点) 其他指令的功能介绍本节作业本节作业P122-11