电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

微机原理与接口技术(第二版) 教学课件 ppt 作者 马维华 主编1,3,4,5,8,9,10,11章 十一五教材讲稿第3章指令系统

109页
  • 卖家[上传人]:E****
  • 文档编号:89184120
  • 上传时间:2019-05-20
  • 文档格式:PPT
  • 文档大小:1.41MB
  • / 109 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、1,第3章 IA-32及Intel64指令系统,【本章提要】 本章讲述Intel系列微处理器的指令系统。8086/8088CPU的指令系统是基本指令集。本章重点讲述IA-32系列CPU的常用指令,和支持EM64T技术的高级Pentium4及Core系列CPU的Intel64指令系统。 【学习目标】 熟练掌握汇编语言指令和机器指令的基本格式,明确操作数的各种寻址方式和物理地址的计算,掌握指令和操作数在内存的存放规律。 掌握各种常用指令的功能,以及对操作数和寻址方式的特殊要求,明确不同指令对标志寄存器的具体影响等方面。 熟悉CPU内部各寄存器的使用规则及其在指令执行过程中的隐含约定。,2,第3章 指令系统主要内容,3.1 指令格式,3.2 寻址方式,3.3 指令系统,指令系统,2009年6月2日星期二,3,指令系统是CPU所能执行的各种指令的集合,定义了计算机硬件所能完成的基本操作,不同的CPU有不同的指令系统。 8086/8088CPU的指令系统是基本指令集,80X86、PentiumX以及Core2系列的指令系统保留了基本指令集,又进行了扩充。,指令系统概述,2009年6月2日星期二,

      2、4,3.1 指令格式,机器指令格式: 汇编指令格式: 指令助记符表示指令的名称,它是指令功能的英文缩写,对应的是机器指令中的操作码部分; 操作数即被处理的对象,若指令中包含多个操作数,则操作数之间以逗号分隔; 注释以分号开始,用来说明程序功能,不影响指令的执行。 最常用的数据传送指令MOV的格式为: MOV DEST,SRC ;将源操作数SRC的值传送至目的操作数DEST 【例】 MOV EAX,EBX ;将EBX的值送给EAX,2009年6月2日星期二,5,3.2 寻址方式,所谓寻址方式,就是寻找指令中操作数的方式。 1)操作数包含在指令中,即指令的操作数部分就是操作数本身(立即数),这种指令寻址方式称为立即寻址。 2)操作数包含在CPU的某个内部寄存器中。这时指令的操作数部分是CPU内部寄存器的一个编码,这种指令寻址方式称为寄存器寻址。 3)操作数在内存的数据区中。这时指令的操作数部分包含着此操作数所在的内存地址,这种指令寻址方式称为存储器寻址。 此时的关键问题是如何正确计算出操作数的有效地址 4)操作数在外部设备端口中。这种情况只适用于输入输出指令,根据外部设备的端口号完成数据的

      3、输入或输出,称为端口寻址。,2009年6月2日星期二,6,指令的3种操作数,(1)立即数 操作数以常量的形式出现在指令中,称为立即数。 如:20、3AH、1234Q、1011B 立即数只能作为指令的源操作数。 (2)寄存器操作数 指令要使用的数据存放在CPU内部寄存器中,在指令中给出寄存器名。如:AL、BX、ECX (3)内存操作数 指令要用的数据存放在内存单元中,在指令中给出内存地址或访问存储器的方法。如:2000、BX 注意:指令中的某个操作数可能是上述3种中的任意一种形式,为了 明确具体操作数的存在位置,必须首先要明确操作数的寻址方式。,2009年6月2日星期二,7,立即数(常数),立即数只能作为源操作数,如 MOV AX,0FA00H;正确 不能作为目的操作数,如 MOV 8000H,AX ;错误,2009年6月2日星期二,8,3.2.1 有效地址的概念,在80X86系列CPU中,内存单元的地址由两部分组成: 段基地址和段内偏移地址(也称段内偏移量) 1)段基地址一般可由段寄存器直接给出,如CS、DS、SS、 ES等,也可以通过段寄存器的内容进行计算得出。 2)段内偏移量最多可

      4、以由四个基本部分,按照一定的规则计 算组合而成,所以也称为有效地址EA。 有效地址四分量包括: 基址寄存器内容: 变址寄存器内容: 比例因子: 在32/64位寻址方式中使用 位移量: 一般是一个具体数值,基址、变址寄存器的值通常为某局部存储区的首地址(比如数组),2009年6月2日星期二,9,有效地址EA计算方法:,EA基址寄存器(变址寄存器比例因子)位移量 有效地址四分量的使用规则:,如:ADD AX,20BXSI ;EA=(BX)+(SI)+20 MOV EBX,EAX4*EDX+2AH ;EA=(EAX)+(EDX)4+2AH,2009年6月2日星期二,10,16位寻址方式主要是针对于实地址存储模式的应用,兼容了Intel 8086的工作模式。存储器的最大分段不超过64KB,最大线性地址空间是1MB。 32位寻址方式主要是用于保护模式下,程序只能存取最低4GB地址空间,使用16位或32位地址。使用16位的分段选择子以及32位的段内偏移地址,每个段最大可达4GB。 64位寻址方式采用64位线性地址空间,支持40位物理地址空间。通常不采用分段方式,而是将CS,DS,ES和SS的段基址

      5、看成0,这样线性地址等于有效地址,是一种平展存储管理模式。,不同方式下的寻址空间,2009年6月2日星期二,11,3.2.2 各种寻址方式,一、立即寻址 操作数作为立即数直接包含在指令中,在指令执行时不需再访问存储器。立即数可以是8、16 、32 、64位。 MOV BL,12H ;字节传送 MOV AX,1020H ;字传送 MOV EDX,12345678H ;32位传送 MOV RAX,1122334455667788H ;64位传送(四字),2009年6月2日星期二,12,二、寄存器寻址方式,寄存器寻址方式下,被访问的操作数存放在指令规定的寄存器中。 INC CL ;8位寄存器加1 MOV DS,AX ;16位寄存器传送 MOV ECX,EAX ;32位寄存器传送 MOV RBX,RAX ;64位寄存器传送 CPU执行指令时,不需要使用访问总线,所以指令的执行速度快。,2009年6月2日星期二,13,三存储器寻址方式,含义:操作数在存储区中,指令的操作数部分指出此操作数的有效地址EA。根据EA的生成方式的不同,可分为以下几种寻址分式: (1)直接寻址:是存储器直接寻址的简称,指

      6、令中的操作数部分直接给出操作数的有效地址EA,是16位或32位的位移量数据,它放在代码段中,操作数一般在数据段中,也可以进行段超越 。 MOV AX,2000H ;将DS段中2000H和2001H单元内容 ; 分别送AL和AH MOV AX,ES:2000H ;将ES段中2000H和2001H单 ;元内容分别送AL和AH,2009年6月2日星期二,14,(2)寄存器间接寻址,操作数在存储器中,而操作数的有效地址EA却在指定的寄存器中, 即 EA寄存器 1)16位寻址时,EA放在SI、DI、BP或BX中。 若以SI、DI、BX间接寻址,则默认操作数在DS段中。 MOV AX,SI ;默认DS为段基址 若以寄存器BP间接寻址,则默认操作数在堆栈段中。 MOV AX,BP ;默认SS为段基址 如果操作数不在上述规定的默认段,则必须在指令中相应的操作数前加上段超越前缀。 MOV CX,DS:BP ;DS:是段超越前缀, 表示访问 数据段,而非堆栈段 2)32位寻址时,8个32位通用寄存器均可作寄存器间接寻址。 MOV CH,EAX MOV DX,EBX 除EBP、ESP默认段寄存器为SS外,其

      7、余6个寄存器均默认段寄存器DS,可以采用段超越前缀对其它段进行寻址。 CS和ES不能被超越,在堆栈操作时,SS也不能被超越。,2009年6月2日星期二,15,3)64位寻址时,16个32位/64位通用寄存器均可作寄存器间接寻址使用。 MOV CL,R10 ;操作数是8位的,操作数地址由64位寄存器R10指出 MOV RDX,EBX ;操作数是64位的,操作数地址由32位寄存器EBX,指 出经零扩展后形成64位有效地址 MOV AX,BX 的执行过程:假设BX寄存器的内容为1000H,则把DS段中的1000H号单元的16位数据传送给AX寄存器,该指令的机器码为8B07H。,注意:直接寻址中有效地址EA来自指令自身,相当于一个常量; 而寄存器间接寻址中有效地址EA来自寄存器,该内容由前面的指 令确定,相当于一个变量。,2009年6月2日星期二,16,(3)寄存器相对寻址,EA基址/变址寄存器位移量 其中位移量由指令直接给出,是指令的一部分。 基址寄存器的使用规则: 1)16位寻址时,BP和BX作为基址寄存器,默认情况下,BX以DS作为段寄存器,BP以SS作为段寄存器;SI(源变址)和DI(

      8、目的变址)作为变址寄存器,默认DS作为段基址寄存器。位移量是8位或16位。 2)32位寻址时,8个32位通用寄存器都能作为基址或变址寄存器。其中ESP、EBP默认段寄存器为SS,其余6个寄存器均默认段寄存器为DS,段可以超越;除ESP外的任何32位通用寄存器均可作变址寄存器。且EBP以SS为默认段寄存器,其余以DS为默认段寄存器。位移量是8位或32位,当位移量超过8位则按照32位处理。,2009年6月2日星期二,17,3)64位寻址时,16个32位/64位通用寄存器都能作为基址寄存器。当使用32位通用寄存器时,先将32位通用寄存器内容零扩展为64位,再与经过符号扩展为64位的位移量相加形成64位有效地址。只有MOV指令允许使用64位的位移量,而其他指令只能使用不超过32位的位移量。 MOV RAX,R155;有效地址为R15寄存器内容加5 的和 MOV RCX,EDX0F0H ;有效地址为EDX寄存器内容零扩展为64位后,再与位移量0F0H符号扩展成64位(0FFFFFFFFFFFFFFF0H)相加的和,2009年6月2日星期二,18,MOV AX,BX24 ;也可写成 MOV AX,

      9、24BX MOV ECX,EBP50 ;也可写成 MOV ECX,50EBP MOV DX,EAXBASE ;也可写成 MOV DX,BASEEAX BASE是符号常量或变量 MOV ECX,EBP+50指令执行时,EBP寄存器内容为3000H,再加上位移量50H之和为3050H,然后把由SS寄存器寻址的段中的3050H单元的32位数据传送给ECX。,2009年6月2日星期二,19,(4)基址加变址寻址,EA 基址寄存器+变址寄存器 MOV AX,BX+SI ;或写成MOV AX,BXSI,BX决定默认段基址由DS指出 MOV EAX,EDXEBP ;由EBP决定默认SS为段基址寄存器 MOV R12,EAX+EDX ;用于64位方式,有效地址为EAX+EDX的和再扩展为64位 MOV RBX,R10+RBP ;有效地址为R10+RBP的64位和。,2009年6月2日星期二,20,(5)带位移的基址加变址寻址,EA基址寄存器变址寄存器位移量 MOV AX,BX+SI+SOME ;16位寻址 MOV EAX,EBX+EBP+2 ;32位寻址 MOV R8,R9+R10+4 ;64位寻址,(6)比例变址寻址 EA变址寄存器比例因子位移量 乘比例因子的操作是在CPU内部靠硬件完成的。 MOV EAX,ARRAYESI4 ;32位寻址 MOV RAX,RBX8+10H ;64位寻址,2009年6月2日星期二,21,(7)基址加比例变址寻址,EA基址寄存器变址寄存器比例因子 只适于32/64位寻址的情况 【例】 MOV EDX,EAX8EBX 或MOV EDX,EAX4EBX MOV EAX,EBX4ESI

      《微机原理与接口技术(第二版) 教学课件 ppt 作者 马维华 主编1,3,4,5,8,9,10,11章 十一五教材讲稿第3章指令系统》由会员E****分享,可在线阅读,更多相关《微机原理与接口技术(第二版) 教学课件 ppt 作者 马维华 主编1,3,4,5,8,9,10,11章 十一五教材讲稿第3章指令系统》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
     
    收藏店铺
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.