已阅读5页,还剩46页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
程序是指令的有序集合,指令是程序的组成元素,通常一条指令对应着一种基本操作。一台计算机能执行什么样的操作,能做多少种操作,是由该计算机的指令系统决定的。一台计算机的指令集合,就是该计算机的指令系统。每种计算机都有自己固有的指令系统,互不兼容。但是,同一系列的计算机其指令系统是向上兼容的。,1.8 8088/8086指令系统,1.8指令系统,第2章:2.2 8088/8086的寻址方式,从8088/8086的指令格式入手,论述: 立即数寻址方式 寄存器寻址方式 存储器寻址方式 进而熟悉8088/8086汇编语言指令格式,尤其是其中操作数的表达方法 为展开8088/8086指令系统做好准备,指令的组成,操作码说明计算机要执行哪种操作,如传送、运算、移位、跳转等操作,它是指令中不可缺少的组成部分 操作数是指令执行的参与者,即各种操作的对象 有些指令不需要操作数,通常的指令都有一个或两个操作数,也有个别指令有3个甚至4个操作数,指令由操作码和操作数两部分组成,指令的助记符格式,操作数2,常被称为源操作数src,它表示参与指令操作的一个对象 操作数1,成被称为目的操作数dest,它不仅可以作为指令操作的一个对象,还可以用来存放指令操作的结果 分号后的内容是对指令的解释,操作码 操作数1,操作数2 ;注释,汇编语句格式,指令的操作码和操作数,每种指令的操作码: 用一个助记符表示(指令功能的英文缩写) 对应着机器指令的一个或多个二进制编码 指令中的操作数: 可以是一个具体的数值 可以是存放数据的寄存器 或指明数据在主存位置的存储器地址,操作数的寻址方式,指令系统设计了多种操作数的来源 寻找操作数的过程就是操作数的寻址 把寻找操作数的方式叫做(操作数)寻址方式 理解操作数的寻址方式是理解指令功能的前提 操作数采取哪一种寻址方式 一方面,会影响处理器执行指令的速度和效率 另一方面,对程序设计也很重要,mov指令,8088/8086 cpu的寻址方式,寻找和获得操作数、操作数存放地址或指令转移地址的方法称为寻址方式。8088/8086 cpu的寻址分为两类,即数据寻址和指令寻址。 机器执行指令的目的就是对指定的操作数完成规定的操作,将操作结果存入规定的地方。因此,如何获得操作数的存放地址及操作结果的存放地址就是一个很关键的问题。8088/8086 cpu有多种方法来获取操作数的存放地址及操作结果的存放地址,这些方法统称为数据寻址方式。,寻址方式,操作数及操作结果存放的地点有三处: 存放在指令的地址码字段中:立即操作数 存放在寄存器中:寄存器操作数 存放在存储器的数据段、堆栈段或附加数据段中:存储器操作数 寻找这些操作数有三种基本寻址方式: 立即寻址方式 寄存器寻址方式 存储器寻址方式,又包括多种寻址方式,操作数的表达符号(1),操作数的表达符号(2),一、立即数寻址方式,指令中的操作数直接存放在机器代码中,紧跟在操作码之后(操作数作为指令的一部分存放在操作码之后的主存单元中) 这种操作数被称为立即数imm 可以是8位数值i8(00hffh) 也可以是16位数值i16(0000hffffh) 立即数寻址方式常用来给寄存器和存储单元赋值,多以常量形式出现,演示,mov ax, 0102h ;ax0102h,【例】 mov al,0ffh,【例】 mov ax,1234h,二、 寄存器寻址方式,操作数存放在cpu的内部寄存器reg中: 8位寄存器r8: ah、al、bh、bl、ch、cl、dh、dl 16位寄存器r16: ax、bx、cx、dx、si、di、bp、sp 4个段寄存器seg: cs、ds、ss、es 寄存器名表示其内容(操作数),演示,mov ax, bx ;axbx,三、 存储器寻址方式,操作数在主存储器中,用主存地址表示 程序设计时,8088采用逻辑地址表示主存地址 段地址在默认的或用段超越前缀指定的段寄存器中 指令中只需给出操作数的偏移地址(有效地址ea) 8086设计了多种存储器寻址方式 1、直接寻址方式 2、寄存器间接寻址方式 3、寄存器相对寻址方式 4、基址变址寻址方式 5、相对基址变址寻址方式,1. 直接寻址方式,直接寻址方式的有效地址在指令中直接给出 默认的段地址在ds段寄存器,可使用段超越前缀改变 用中括号包含有效地址,表达存储单元的内容,演示,mov ax, 2000h ;axds:2000h,mov ax, es: 2000h ;axes:2000h,2. 寄存器间接寻址方式,有效地址存放在基址寄存器bx或变址寄存器si、di中 默认的段地址在ds段寄存器,可使用段超越前缀改变,演示,mov ax, bx ;axds:bx,【例】 mov ax,bx (ds)=3000h,(bx)=1010h,(31010h)=12h,011h)=24h 则操作数的20位物理地址=30000h+1010h=31010h。 指令执行完以后,(ax)=2412h。,3. 寄存器相对寻址方式,有效地址是寄存器内容与有符号8位或16位位移量之和,寄存器可以是bx、bp或si、di 有效地址bx/bp/si/di8/16位位移量 段地址对应bx/si/di寄存器默认是ds,对应bp寄存器默认是ss;可用段超越前缀改变,演示,mov ax, si+06h ;axds:si+06h,mov ax, 06hsi ;axds:si+06h,4. 基址变址寻址方式,有效地址由基址寄存器(bx或bp)的内容加上变址寄存器(si或di)的内容构成: 有效地址bx/bpsi/di 段地址对应bx基址寄存器默认是ds,对应bp基址寄存器默认是ss;可用段超越前缀改变,演示,mov ax, bx+si ;axds:bx+si,mov ax, bxsi ;axds:bx+si,【例】 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,5. 相对基址变址寻址方式,有效地址是基址寄存器(bx/bp)、变址寄存器(si/di)与一个8位或16位位移量之和: 有效地址bx/bpsi/di8/16位位移量 段地址对应bx基址寄存器默认是ds,对应bp基址寄存器默认是ss;可用段超越前缀改变,演示,mov ax, bx+di+6 ;axds:bx+di+6,mov ax, 6bx+di,mov ax, 6bxdi,【例】table是数据段中定义的一个符号地址,假设它在数据段中的偏移地址是1000h。,mov ax,tablebxdi (ds)=2000h,(bx)=0100h,(di)=0020h,则偏移地址=1000h +0100h+0020h=1120h,20位物理地址=20000h+1120h=21120h 如(21120h)=12h,(21121h)=34h 执行完指令以后,(ax)=3412h,存储器寻址方式中的变量,变量指示内存中的数据,变量名具有地址属性。存储器寻找方式中经常采用变量形式 变量的定义 wvar dw 1234h ;定义16位变量wvar,具有初值1234h ;假设其偏移地址为10h 单独引用变量名是直接寻址方式 mov ax,wvar ;指令功能:ax1234h ;等同于 mov ax,0010h 相对寻址方式中,变量名表示其偏移地址,相当于位移量 mov ax, di+wvar ; mov ax,wvardi ;等同于 mov ax,di+0010h,相对寻址方式中的位移量,在寄存器相对和相对基址变址寻址方式中,其位移量不仅可用常量表示,也可用符号表示 这个符号可以是变量名,例如wvar变量,而且支持多种表达形式 mov ax, di+wvar ; ;等同于 mov ax, wvardi mov ax,bx+si+wvar ;等同于 mov ax, si+wvar ;等同于 mov ax, wvarbx+si ;等同于 mov ax, wvarbxsi,这类指令都仅限于i/o端口或存储单元与累加器al(ax)之间传送数据。具体包括in输入指令、out输出指令和xlat换码指令。 1、 in输入指令 汇编格式:in al,i/o口地址表达式 或 in ax,i/o口地址表达式) 执行的操作: al(i/o口地址表达式) 或 ax(i/o口地址表达式+1),(i/o口地址表达式),四、累加器专业传送指令,说明: 该指令的目的操作数仅限于累加器,即8位操作采用al,16位操作采用ax,不能由其他任何寄存器代替。 如果i/o寻址的口地址号在8位以内,可以用直接寻址方式,地址表达式则由一个8位立即数表示(长格式) ;如果i/o寻址的口地址号在16位以内,可以用寄存器间接寻址方式,所寻址的地址口号则装入dx,间接寻址仅可以使用dx (短格式)。,2、 out输出指令 汇编格式: out 地址表达式,al 或 out 地址表达式,ax 执行的操作: i/o口地址(al) 或 (i/o口地址+1),(i/o口地址)(ax) 说明:同1。,3、 长格式 in al,0e0h out 0e0h,al 4、 短格式 mov dx,200h in al,dx out dx,al,输入输出指令,输入指令(in:将外设数据传送给cpu内的al/ax) in al,i8 ;字节输入 in al,dx ;字节输入 in ax,i8 ;字输入 in ax,dx ;字输入 输出指令(out:将cpu内的al/ax数据传送给外设) out i8,al ;字节输出 out dx,al ;字节输出 out i8,ax ;字输出 out dx,ax ;字输出,演示,演示,i/o端口,8088只能通过输入输出指令与外设进行数据交换;呈现给程序员的外设是端口(port),即i/o地址 8086用于寻址外设端口的地址线为16条,端口最多为21665536(64k)个,端口号为0000h ffffh 每个端口用于传送一个字节的外设数据,i/o寻址方式,8088/8086的端口有64k个,无需分段,设计有两种寻址方式 直接寻址:只用于寻址00h ffh前256个端口,操作数i8表示端口号 间接寻址:可用于寻址全部64k个端口,dx寄存器的值就是端口号 对大于ffh的端口只能采用间接寻址方式,数据交换方式,如果输入输出一个字节,利用al寄存器 如果输入输出一个字,利用ax寄存器 输入一个字,实际上是从连续两个端口输入两个字节,分别送al(对应低地址端口)和ah(对应高地址端口) 输出一个字,实际上是将al(对应低地址端口)和ah(对应高地址端口)两个字节的内容输出给连续两个端口,in指令实例(从20h端口输入一个字),;方法1:直接寻址,字量输入 in ax,20h ;方法2:间接寻址,字量输入 mov dx,20h in ax,dx,;方法3:直接寻址,字节量输入 in al,21h mov ah,al in al,20h ;方法4:间接寻址,字节量输入 mov dx,21h in al,dx mov ah,al dec dx in al,dx,out指令实例(向300h端口输出一个字节),;唯一的方法:间接寻址,字节量输出 mov al,bvar ;bvar是字节变量 mov dx,300h out dx,al,问 题,习 题 2,1.1 试述微处理器的发展历史。 1.2 8086微处理器由哪几部分组成?各部分的功能是什么? 1.3 简述8086 cpu的寄存器组织。 1.4 试述8086 cpu标志寄存器各位的含义与作用。 1.5 8086中,存储器为什么采用分段管理? 1.6 什么是逻辑地址?什么是物理地址?如何由逻辑地址计算物理地址?,1.7 8086中,cpu实际利用哪几条地址线来访问i/o端口?最多能访问多少个端口? 1.8 80x86微处理器的指令队列的作用是什么? 1.9 80486中,什么是描述符?描述符表寄存器有什么作用? 1.10 80486如何实现段页式存储器管理? 1.11 什么是微处理器超标量体系结
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025北京振远护卫有限公司招聘模拟试卷附答案解析
- 2025年福建福州市鼓楼区城投集团招聘9人备考题库附答案解析
- 2025重庆开州高新技术产业开发区选调5人备考题库附答案解析
- 2025四川九华光子通信技术有限公司招聘产品工程师1人笔试备考试卷附答案解析
- 2025年西咸新区上林街道卫生院招聘模拟试卷带答案解析
- 2025国家管网集团液化天然气接收站管理公司招聘模拟试卷带答案解析
- 2025福建厦门市集美区马銮小学招聘顶岗教师1人备考公基题库附答案解析
- 2025福建福州左海置地有限公司招聘1人历年真题汇编附答案解析
- 中共南部县委组织部关于2025年南部县党政机关公开考调工作人员(16人)历年真题汇编带答案解析
- 2025湖北黄石市教育局直属高中学校秋季校园招聘20人笔试模拟试卷带答案解析
- 小米集团2025年度组织结构和部门职能
- 非正常情况接发列车课件
- 杭州萧山交通投资集团有限公司Ⅱ类岗位招聘7人笔试考试参考试题及答案解析
- 化工和危险化学品生产经营单位重大生产安全事故隐患判定标准(试行)解读(化危为安)
- 2025年考研金融学专业宏观经济学测试试卷(含答案)
- 2025年保险业务员招聘面试参考题库及答案
- 浙江省2025届高三杭州一模英语试题
- 部编版二年级语文学习重点解析
- 2025年中国银发经济发展研究报告-赛迪顾问
- 社会救助系统培训课件
- 2025年保安员考试题库含答案(新)
评论
0/150
提交评论