电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > PPT文档下载
分享到微信 分享到微博 分享到QQ空间

微机课件第3章修改

  • 资源ID:90924717       资源大小:2.47MB        全文页数:229页
  • 资源格式: PPT        下载积分:10金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要10金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

微机课件第3章修改

第3章 指令系统和寻址方式,3.1 指令系统概述 3.2 8088/8086 CPU的寻址方式 3.3 8088/8086 CPU的指令系统 习题3,操作码:指示指令的操作类型; 操作数:指令所需操作数或操作数的地址,可位于寄存器、存储器或I/O端口;操作数可以没有,也可以只有一个,也可以有两个,一个源操作数,一个目的操作数。 例3-1: HLT ; 暂停指令,编码为F4H DEC BX; 编码为4BH MOV AX,CX ;将CX的内容送入AX中。,3.1 指令系统概述,1、指令格式 指令由两部分组成:操作码字段和地址码字段,格式如下:,3.2 8088/8086 CPU的寻址方式,8088/8086 CPU的寻址分为两类,即数据寻址和指令寻址。 数据寻址方式:CPU用来获取操作数的存放地址及操作结果的存放地址的方法。,3.2.1 立即寻址方式 立即寻址方式指寻找的操作数紧跟在指令操作码之后。汇编语言格式表示为: 操作码 数字表达式 【例3-2】 MOV AX,267 MOV AL,10010011B AND 0FEH MOV AL,PORT1 MOV AX,DATA1,例中,“267”是数字;“10010011B AND 0FEH”是一个数字表达式;PORT1是一个用EQU定义的变量名,属于常数;DATA1是定义的段名,实际上就是段地址,是一常数。 对于数字表达式的编译:在汇编立即寻址方式时,汇编程序首先计算出数字表达式的值,然后将其写入指令的地址码字段,这称为立即数。,【例3-3】 MOV AL,0FFH 操作的示意图如图3.2所示。,图3.2 8位立即寻址操作示意图,【例3-4】 MOV AX,1234H 操作的示意图如图3.3所示。 注意:这种寻址方式不能用于单操作数指令。若用于双操作数指令,也只能用于源操作数字段,不能用于目的操作数字段。,图3.3 16位立即寻址操作示意图,3.2.2 寄存器寻址方式 寄存器寻址是指寻找的操作数在某个寄存器中。汇编语言格式表示为: 操作码 寄存器名 如:AL,BX,CX,DS等。 【例3-5】MOV AX,BX MOV AL,BL 例中,AX,BX是16位寄存器寻址方式;AL,BL是8位寄存器寻址方式。,3.2.3 存储器寻址方式 当操作数放在存储器中的某个单元时,CPU要访问存储器才能获得该操作数。如果存储器的存储单元地址是20位,把通过各种方法算出段内偏移地址(有效地址),结合段地址形成20位物理地址找到操作数的方法,统称为存储器寻址方式。 1. 直接寻址方式 直接寻址方式是指寻找的操作数的地址在指令中直接给出。格式表示为: 操作码 地址表达式 (或地址表达式) 操作码 数字表达式,【例3-6】 假设TABLE是在数据段定义的一个字节数组的首地址标号(变量名),其偏移地址为1000H,则指令 MOV AL,TABLE 或 MOV AL,TABLE+2 或 MOV AL,TABLE 或 MOV AL,TABLE+2 或 MOV AL,1000H 或 MOV AL,1000H+2 是等效的,都是直接寻址方式。,【例3-7】 MOV AX,1000H 如果(DS)=3000H,(31000H)=12H,(31001H)=34H,则指令执行完以后,(AX)=3412H。 注意:该寻址方式默认的段寄存器是DS。由于8086的存储器采用分段管理,因此寻找一个内存操作数,只能在某一段的64K范围内寻找。对于以上的寻址方式,系统都有一个基本的段约定。当操作数段地址不在约定的段寄存器时,可以使用段超越前缀取代其约定段。,段超越前缀形式为:“ 段寄存器名:” 段超越其汇编格式为 段寄存器名:地址表达式 或 段寄存器名:数字表达式 或 段寄存器名:地址表达式 或 段寄存器名:数字表达式 例如: MOV AX,ES:BP ;段地址在ES MOV AX,CS:BX SI ;段地址在CS,段地址的基本约定和允许超越的情况如表所示:,【例3-8】 假设TABLE是在附加数据段定义的一个字节数组的首地址标号,其偏移地址为1000H,则指令 MOV AL,ES:TABLE 或 MOV AL,ES:TABLE 或 MOV AL,ES:1000H 或 MOV AL,ES:1000H 是等效的,都表示将字节数组的第一个数组元素送入AL寄存器中。,2. 寄存器间接寻址方式 在计算机中通常将BX、BP称为基址寄存器,SI、DI称为变址寄存器,寻址时操作数的地址被放在这些寄存器中。 寄存器间接寻址方式在汇编格式中表示为: 基址寄存器名或变址寄存器名 【例3-9】 MOV AX,BX MOV AX,SI 例中,BX、SI都是寄存器间接寻址方式。寄存器间接寻址要用方括号括起来,以便与寄存器操作数相区别。,汇编寻址这种方式时,汇编程序将BX、SI、DI或BP寄存器的地址编号写入指令的地址码字段,当机器执行含有这种寻址方式的指令时,依据地址码字段的值访问得到寄存器的值,将该值作为操作数的偏移地址。 注意:如果指令中指定的寄存器是BX、SI、DI,则操作数默认在数据段中,取DS寄存器的值作为操作数的段地址值;如果指令中指定的寄存器是BP,则操作数默认在堆栈段中,取SS寄存器的值作为操作数的段地址值,从而算得操作数的20位物理地址,继而访问到操作数。,寻址方式的地址计算: 物理地址 = (DS)* 16 + (BX)或(SI)或(DI) 物理地址 =(SS)* 16 + (BP),例如:MOV AX,BX 若(DS)2000H,(BX)1000H,物理地址20000H1000H21000H。指令执行前,(AX)2030H,(21000H)A0H,(21001H)50H,指令执行后,(21000H)0A0H,(21001H)50H ,(AX)50A0H 。指令执行情况如下:,注意: Mov指令的源操作数的长度必须与目的操作数一致,否则会出错。例如,不能将AH寄存器的内容传送到CX中去,尽管CX寄存器放得下AH的内容,但汇编程序不知道将它放到CH还是CL中。 源操作数可为寄存器寻址;目的操作数也可为寄存器寻址;源操作数和目的操作数可同时为寄存器寻址。,3. 寄存器相对寻址 操作数的偏移地址是指定寄存器的值与一个整数之和。汇编格式为: 变量名基址寄存器名或变址寄存器名或变量名+基址寄存器名或变址寄存器名 符号名基址寄存器名或变址寄存器名或基址寄存器名或变址寄存器名+符号名 基址寄存器名或变址寄存器名±数字表达式,+,1)物理地址 = (DS)* 16 +(BX)+DISP8 (SI)、(DI)、DISP16类同-偏移量。 2)物理地址= (SS) *16 + (BP)+DISP16 例: 如果 (DS)=3000H, (SI)= 2000H, COUNT=3000H, 则执行指令 MOV AX,CONUTSI,求出此种寻址方式对应的有效地址和物理地址。 有效地址= 2000H + 3000H = 5000H 物理地址=(DS)*16 + 5000H =30000H + 5000H =35000H,物理地址的计算:,例3-10:设执行前: (AX)=0040H,(BX)=0030H,(DS)=2000H,(20036H)=0050H 执行指令: ADD 6BX,AX 执行:(20036H)+(AX) 20036H 执行后:(AX)=0040H,(BX)=0030H,(DS)=2000H,(20036H)=0090H。,【例3-11】 TABLE是在数据段定义的一个字节数组的首地址标号(也称变量名),则有如下程序: MOV SI,5 MOV AL,TABLESI ;可以写为:MOV AL,TABLE+SI ABC EQU 5 LEA SI,TABLE ;LEA是取偏址指令,本句是把TABLE偏址SI MOV AL,ABCSI ;可以写为:MOV AL,ABC+SI 如:BX+6、BP-100H、SI+OFFSET TABLE都是寄存器相对寻址方式。,【例3-12】 TABLE是数据段中定义的一个变量,假设它在数据段中的偏移地址为0100H,有指令: MOV AX,TABLESI 若(DS)=2000H,(SI)=00A0H,(201A0H)=12H,(201A1H)=34H,则物理地址为:=20000H+0100H+00A0H=20000H+01A0H=201A0H。 也可用段超越前缀重新指定段寄存器,例如: MOV AL,ES:TABLESI 此寻址方式一般用于访问表格,表格首地址可设置为变量名,通过修改SI、DI、BX或BP的内容来访问表格的任一数据项的存储单元。,4、基址变址寻址方式: BX、BP叫基址寄存器,因此用它们进行寻址的又叫基址寻址。SI、DI叫变址寄存器,用它们进行寻址的又叫变址寻址。在处理数组时,SI用于源数组的变址寻址;DI则用于目的数组的变址寻址。 操作数所在存储单元的有效地址为基址寄存器(BX或BP)与变址寄存器(SI或DI)内容之和。 用这种寻址方式,存储器操作数的有效地址EA是由指令指定的一个基址寄存器和一变址寄存器的内容之和,结果按16位归算(只取结果的低16位有效)。,例: MOV AX,BX+DI 或 MOV AX,BXDI DS:(BX)+(DI) 字存储单元内容送AX。 MOV AX,CS:BX SI ;段地址在CS 例: MOV AX,BP+SI 或 MOV AX,BPSI SS:(BP)+(SI) 字存储单元内容送AX。 例: MOV AX,BXSI 或写为: MOV AX,BX+SI 设DS2000H,BX8000H,SI90FEH,则: BXSI8000H90FEH110FEH 取低16位有效得: EA10FEH PA2000H×16EA210FEH 指令执行后,将把210FEH和210FFH相邻两个单元内容送到AX。而AL(210FEH),AH(210FFH)。,【例3-14】 MOV AX,BX SI(或写为MOV AX,BX+SI) 若 (DS)=2000H,(BX)=0500H,(SI)=0010H 则 偏移地址=0500H+0010H=0510H 20位物理地址=20000H+0510H =20510H 如(20510H)=12H,(20511H)=34H,操作的示意图如图3.5所示。,图3.5 基址变址寻址操作示意图,5、基址变址加位移量间接寻址 操作数所在单元的有效地址为基址寄存器(BX或BP)与变址寄存器(SI或DI)的内容之和再加上位移量(8位或16位)。 (BX) (SI) DISP8 (BP) (DI) DISP16 物理地址 = (DS)* 16 +(BX)产生的有效地址 物理地址 = (SS)* 16 +(BP)产生的有效地址,有效地址=,+,+,例:已知:(DS)=3000H,(BX)=2000H,(SI)=1000H,MK=0250H 指令: MOV AX,MKBXSI 或 MOV AX,MKBX+SI 或 MOV AX,MK+BX+SI 有效地址:MK+(BX)+(SI)=0250H+2000H+1000H3250H 物理地址:(DS)*16 +有效地址 =30000H+3250H=33250H 执行结果:将33250H单元内容送AL,33251H内容送AH。,【例3-15】 MOV AL,TABLEB

注意事项

本文(微机课件第3章修改)为本站会员(E****)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.