黄强 汇编 第2章80868088的寻址方式和指令系统.ppt

黄强 汇编 第2章80868088的寻址方式和指令系统.ppt

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

2.1 寻址方式 2.2 8086/8088的指令系统 例如: ADD AX,BX 其中AX是目的操作数,BX是源操作数,执行前,AX存放被加数,BX存放加数,执行后,AX和BX相加的结果存放在AX中。 ·JO溢出则转移 格式:JO OPD 测试条件:OF=1 ·JNO 不溢出则转移 格式:JNO OPD 测试条件:OF=0 ·JP(或JPE) 奇偶位为1则转移 格式:JP OPD 测试条件:PF=1 ·JNP(或JPO)奇偶位为0则转移 格式:JNP(或JPO) OPD 测试条件:PF=0 说明:1)当方向标志DF=0时用+,当方向标志DF=1时用-,?该指令不影响条件码。 2)其中第二、三种格式明确地注明是传送字节或字,是无操作数指令,第一种格式则应在操作数中表明是字还是字节操作,例如: MOVS ES:BYTE PTR[DI],DS:[SI] 3)通常使用前要建立方向标志DF,用CLD指令使DF=0,在执行串操作指令时可使地址自动增量;用STD指令使DF=1,在执行串操作指令时可使地址自动减量。 执行的操作: ①把标志寄存器的内容压栈 SP←SP-2 ,(SP+1,SP) ← (FLAGS) ②清中断标志位和陷阱标志位 IF←0,TF←0 ③将现行程序的CS和IP的内容压栈 SP←SP-2,(SP+1,SP)←CS SP←SP-2, (SP+1,SP)←(IP) ④将中断服务程序的代码段地址和偏移地址分别送CS和IP IP← ( n×4+1,n×4) CS← (n×4+2,n×4+3) 说明:n是中断类型号,它是一个立即数,范围为00~FF;该指令影响标志位IF,TF。 2.2.6 字符串操作指令 字符串操作指令中,使用SI寄存器(且在现行数据段中)寻址源操作数,段基址使用DS寄存器。用DI寄存器(且在现行附加数据段中)寻址目的操作数,段基址使用ES寄存器。字符串指令执行时将自动修改SI、DI地址指针。 第2章 寻址方式和指令系统 1. 与REP相配合工作的MOVS,STOS和LODS指令 (1)重复串操作指令REP 格式: REP 字符串指令 其中字符串指令可为MOVS,LODS或STOS指令 执行的操作: ①如果CX=0则退出REP,否则往下执行; ②CX←CX-1 ③执行REP后的串操作 ④重复1)~3) 该指令只能使用CX作计数器。 第2章 寻址方式和指令系统 2.串传送指令MOVS 格式: MOVS OPD,OPS (一般格式) MOVSB (字节格式) MOVSW (字格式) 功能:实现由SI寻址的源字符串数据向由DI寻址的目的字符串中传送,并自动修改地址指针SI、DI.。 执行的操作:([DI])←([SI]) 字节操作: SI← SI± 1,DI ←DI± 1 字操作: SI ←SI± 2,DI ←DI± 2 第2章 寻址方式和指令系统 第2章 寻址方式和指令系统 【例2.41】将数据段中一字符串A,长度为N,传送到附加数据段中符号地址为B开始的缓冲区中。 … LEA SI,A ; 装入原串首地址 LEA DI,B ; 装入目的串首地址 MOV CX,N ; 装入串长度; CLD ; 置DF=0 REP MOVSB ; 重复执行串移动,直至CX=0 第2章 寻址方式和指令系统 3.存入串指令STOS 格式: STOS OPD (一般格式) STOSB (字节格式) STOSW (字格式) 功能:该指令把AL(字节)或AX(字)的内容存入由DI指定的附加段的某单元中,并根据DF的值及数据类型自动修改DI的值。当它与REP联用时,可把AL或AX的内容存入一个长度为CX的缓冲区中。 执行的操作: 字节操作:([DI])←AL,DI←DI±1 字操作: ([DI])←AX,DI←DI±2 该指令使用方式与MOVS类似。该指令不影响条件码。 第2章 寻址方式和指令系统 【例2.42 】用空格初始化BUFFER 缓冲区。 MOV AX,SEG BUFFER;取BUFFER段址 MOV ES,AX LEA DI,BUFFER ;取BUFFER偏移地址 MOV CX,10 ;置长度 MOV

文档评论(0)

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

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

1亿VIP精品文档

相关文档