n09第2章_指令系统.ppt

  1. 1、本文档共162页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
n09第2章_指令系统

例2: MOV AX,521AH MOV [2000H],AL MOV AH,[2000H] 问:程序执行后 AX=( )H 1A1AH 例3: XOR AX,AX MOV BX,2000H MOV [2000H],AX 问:程序执行后 AX=( )H BX=( )H,[DS:2000H]=( )H AX=0H BX=2000H [DS:2000H]=0H 例4:用一条指令完成下列各功能 1)CX最低位置1,其与位不变 2)给AX赋初值0 3)DX高3位取反,其余位不变 OR CX,01H XOR AX,AX MOV AX,0 AND AX,0 XOR DX,0E000H 在内存数据区自1000H开始存有100个无符号字节数据,要求计算其中偶数的和,并将计算结果存放在2000H单元中。 设有100个无符号字节数据,存放在自1000H开始的数据区中,试编程求取其中字符“8”(38H)的个数,并存于3000H单元中。 4.字符串装入 指令格式: LODS 源串 一般形式: LODSB ;字节串装入 LODSW ;字串装入 [DS:SI] AL SI=SI+1 ,DI=DI+1(DF=0) SI=SI-1 , DI=DI-1 (DF=1 [DS:SI] AX SI=SI+2 ,DI=DI+2(DF=0) SI=SI-2 , DI=DI-2 (DF=1 此指令属传送指令,对状态标志无影响,当需要将一批数据不断送往AL(AX)中处理时,用此指令非常方便。 5.字符串转储 指令格式:STOS 目的串; 一般形式: STOSB ;字节转储 STOSW ;字转储 [ES:DI] AL DI=DI+1(DF=0) DI=DI-1 (DF=1) [ES:DI] AX DI=DI+2(DF=0) DI=DI-2 (DF=1) 此指令对标志位无影响。 6.重复前缀指令 重复前缀指令用来控制紧跟其后的字符串指令是否重复执行。此类指令共有3条。指令助记符及功能说明如下: REP 重复执行其后的字符串指令,直到CX=0 REPE/ERPZ 当相等/为零时重复执行其后的字符串指令 REPNE/REPNZ 当不相等/不为零时重复执行其后的字符串指令 REP常与MOVS及STOS指令联合使用,可以将由CX中内容规定元素个数的一串字符进行传送或转储。 REPE(相等时重复)和REPZ(等于零时重复)两个重复前缀指令实际上是相同的。它们与CMPS及SCAS指令联合使用,根据零标志ZF(由CMPS及SCAS指令影响)及CX内容决定是否重复。若ZF=1,且CX≠0则重复;否则停止字符串操作,转而执行下一条指令。 REPNE(不相等时重复)和REPNZ(不等于0时重复)两个重复前缀指令意义相同。它们也及SCAS与指令联合使用,根据CMPS及SCAS所设置的零标志ZF及CX的内容,决定是否重复。若ZF=0且CX≠0,则重复执行其后的字符串指令,否则停止重复,转而执行下一条指令。 例5.13 若要对内存某一缓冲区清零,缓冲区地址为2000H-2100H,缓冲区长度为100个字节。编程实现: 重复把AL=00送到DI所指的单元,并自动修正DI和CX内容,直至CX=0为止。 CLD MOV DI,2000H MOV CX,100 MOV AL,00 REP STOSB : 六、控制转移类指令 8086/8088指令系统有4种控制转移类指令,分别为:转移指令、循环指令、子程序调用及返回指令和中断及中断返回指令。 1. 转移指令 转移指令又分成无条件转移与有条件转移两种类型的指令。 (1)无条件转移指令JMP 指令格式:JMP XUL 指令功能:程序无条件转移到 XUL(语句标号 )处执行 jmp xul ………. xul: mov ax, bx 所有条件转移指令的目标地址必须在当前代码段内,相对位移只能在-128——+127字节范围内。 8086/8088指令系统中,共有18条条件转移指令。 (2)条件转移指令 根据对状态标志位测试的结果决定是否将程序转移到新的地址,当测试结果满足指令的条件时,程序转移到目标地址;否则不发生转移,依然按原顺序向下执行。 实际应用时,当要求转移的范围超过上述规定,必须借助于JMP指令。 助

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档