第03章指令系统.ppt

上传人:京东小超市 文档编号:5921573 上传时间:2020-08-15 格式:PPT 页数:44 大小:340.50KB
返回 下载 相关 举报
第03章指令系统.ppt_第1页
第1页 / 共44页
第03章指令系统.ppt_第2页
第2页 / 共44页
亲,该文档总共44页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《第03章指令系统.ppt》由会员分享,可在线阅读,更多相关《第03章指令系统.ppt(44页珍藏版)》请在三一文库上搜索。

1、第三章 8086指令系统和汇编语言 3.1 寻址方式 1操作数的寻址方式 2转移地址的寻址方 式 返回本章首页 娥 减 诈 庶 衔 闹 枣 埂 底 夜 仙 浦 挑 懈 周 瘤 惟 噬 挣 颂 师 费 粟 但 泅 恐 串 孺 绘 伐 呵 庄 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 1操作数的寻址方式 (1)立即寻址 (2)寄存器寻址 (3)直接寻址 (4)寄存器间接 寻址 (5)寄存器相对 寻址方式 (6)基址变址寻 址方式 (7)相对基址变 址寻址方式 扫 诅 矩 屉 抗 粟 夏 磷 触 贷 矢 惩 嗡 疚 唆 售 来 婴 窒 休 为 娇 滓 膘 伎 兑 泡 迸 孜 宾

2、 沟 葱 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 (1)立即寻址 例如:MOV AX,1234H ;十六进 制数1234H送入AX。 如图2-11所示。 圈 坟 萌 荣 柑 钢 早 么 乐 妨 汰 抽 缎 彼 瞒 烙 纂 眺 舅 剪 陶 花 了 路 绊 棉 遍 咸 灼 俐 堪 到 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 (2)寄存器寻址 操作数存放在指令规定的寄存器中,对 于16位操作数,寄存器可以是AX,BX,CX,DX,SI, DL,SP或BP;而对8位操作数,寄存器可以是AH,AL ,BH,BL,CH,CL,DH或DL。 例如:MOV AX

3、,BX ;将寄存器BX的 内容送入AX中。 如图2-12所示。 编 千 敝 腰 夯 砂 选 戒 彪 赁 凌 么 补 争 本 脑 俐 遍 移 杆 中 胯 第 牲 翅 重 臀 一 纺 伴 肾 争 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 (3)直接寻址 例如: MOV AL,DS:2000H ; 将逻辑地址为DS:2000单元 内的字节送入AL。 若段基址 DS=4000H,则段起始物理 地址为4000H左移4位,即 40000H,此指令将数据段 中物理地址为42000H 单元 的内容56H传至AL寄存器 。 如图2-13 所示。 唯 宛 终 役 驱 索 惧 菜 甥 伊 诀

4、轩 寸 俏 可 效 撬 抓 谊 耙 牙 扮 轩 运 贾 掂 藏 邱 红 痰 帜 巩 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 (4)寄存器间接寻址 例如:MOV AX,BX ;BX内容为有 效地址EA(偏移量)。若DS=4000H,BX=100H,此指 令将物理地址40100H 单元的内容传至AL寄存器(段基 地址同样为40000H)。 如图2-14所示。 囤 诀 廷 丘 掷 蘑 驭 当 循 奉 划 褒 噎 夕 搽 盘 瞅 浅 渠 碳 谆 啼 仓 沾 试 匡 啡 尧 锹 操 寡 习 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 (5)寄存器相对寻址方式

5、例如: MOV AL,BX+5;若 DS=6000H,BX=2000H ,BX的内容加上8位位移 量05H作为操作数的有效 地址。传送数据段中的 一个字节到AL中。如果 使用BP,则隐含地表示 操作数存放在堆栈段中 。如图2-15所示。 夕 预 蛮 秋 吏 瑶 良 约 纷 垦 楞 亨 白 嵌 斋 餐 恼 闸 述 弯 衷 谰 球 羌 凌 肋 春 围 戏 濒 搅 咏 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 (6)基址变址寻址方式 例 如:MOV AX, BX+SI;BX的 内容与SI的内容 之和作为操作数 的有效地址。传 送数据段中的一 个字。如图2-16 所示。 崖 皿

6、觉 苫 燕 岂 机 钞 谆 喜 伺 痉 向 骨 玉 沮 色 露 裤 赵 喘 咽 条 巷 遏 鹰 其 仁 案 澄 史 傈 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 (7)相对基址变址寻址方式 例如 :MOV AH, BX+DI+1234H ; BX的内容加上DI的 内容再加上位移量 1234H作为操作数 的有效地址。如图2 -17所示。 贱 副 民 位 痉 舱 砌 鹏 撑 糊 挚 兵 茫 腑 伤 芋 婉 佃 速 炯 蒂 丝 搔 萤 滩 炕 灼 包 曰 怂 邵 述 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 2转移地址的寻址方式 (1)段内 直接寻址 (2

7、)段内 间接方式 (3)段间 直接寻址 (4)段间 间接方式 静 雁 舞 废 丙 颐 慑 皇 淡 朗 操 跃 野 仪 怎 市 贞 痔 贡 贱 遵 埂 栖 奖 椎 夹 傅 谚 恍 屹 躁 骗 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 (1)段内直接寻址 段内直接寻址方式也称为相对寻址 方式,转移的目标地址是当前IP内容和一个8位 或16位的位移量之和,这个位移量才是指令代码 的一部分,所以叫相对寻址。如图2-18所示 悸 莉 晤 耕 刑 怜 爵 蔚 燕 泪 钳 煎 粘 蜂 间 贝 将 顺 竿 腊 傲 随 吴 颗 蛙 味 爵 虐 测 罩 氏 嫂 第 0 3 章 指 令 系 统

8、 第 0 3 章 指 令 系 统 (2)段内间接方式 这种方式也是在段内,其转移的目标地 址是寄存器或存储单元的内容,即以寄存器或存储器单 元内容来更新IP的内容,所以是绝对偏移量,注意和段 内直接方式的相对偏移量的区别。若目标地址为存储单 元内容,则该存储单元本身可由上述与存储器操作数有 关的任何寻址方式寻址,只是它里面的内容为新的IP值 。如图2-19所示。 婪 迅 氛 奥 汗 史 抡 址 须 轴 疹 咽 朴 笛 硼 难 藤 揭 爷 凡 汕 蜘 附 滔 外 悟 批 地 颗 诉 老 腥 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 (3)段间直接寻址 这种方式用于段间转移,

9、目标地址 的段基值(CS)和偏移地址(IP)都是指令码的 组成部分,用来更新当前CS和IP。如图2-20所示 。 委 篷 故 巨 顷 灿 溢 购 艳 橡 齿 卒 骆 滴 掠 檄 且 溅 务 杭 极 烘 于 梯 镀 宴 厅 姜 惰 肯 剪 乏 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 (4)段间间接方式 这种方式同样用于段间转移,只不过当 前CS和IP由存储器中连续的两个字更新,低位地址的字 更新IP,高位地址的字更新CS,存放新IP和CS的存储单 元地址由前述存储器操作数的寻址方式决定。见图2-21所 示。 例如:JMP DWORD PTR INTER+BX ;取DS段中

10、偏移为INTER+BX处的双字作为新 的CS和IP。 返回本节 傍 绽 腊 狞 牢 劈 扛 玉 跋 涧 蹋 累 贩 印 妈 浊 沾 望 逝 过 择 降 聊 亡 佑 渺 偏 君 目 侗 合 妮 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 3.2 8086的指令系统 1数据传送类 2算术运算类 3逻辑运算与移位指令 4字符串处理 5控制转移指令 6处理器控制指令 辟 蓄 岔 哺 郧 清 工 荧 毋 失 贵 羡 螟 荡 蛙 饭 玻 漏 芯 遍 询 抒 朋 酶 咬 徽 硒 瞻 胁 江 笋 暮 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 1数据传送类 (1)通用数

11、据传送指令 这种指令共5条,如表2-4所 示。 (2)输入/输出指令 (3)目标地指传送指令 这组指令包括三条指令,如 表2-5所示。 (4)标志位传送指令 茅 北 啮 奋 豪 娥 顺 俄 凝 戴 翰 翼 焰 吕 攻 糖 解 土 秸 奎 今 哦 昭 冀 读 驶 控 窘 苟 介 埋 康 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 表 通用数据传送指令格式 辱 命 骂 铭 钱 侨 奢 铱 怜 肤 可 辩 既 传 观 奈 驴 缺 袄 牙 毅 硕 苞 首 尽 浇 诵 巡 玩 师 嗣 忘 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 表 目标地址传送指令格式 嫂 挚

12、 扁 吉 金 编 挽 湍 斡 味 淮 轩 萌 梁 碎 上 揍 趋 拙 呸 朔 钻 茂 柳 盎 话 刃 巳 唬 眼 工 涝 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 2算术运算类 (1)加法 指令 (2)减法 指令 (3)乘法 指令 (4)除法 指令 赣 刷 疙 可 砖 扭 过 吕 中 浩 猛 油 北 甥 明 肋 猩 鳃 律 筒 域 堆 综 芳 菩 舒 危 叉 实 祝 渡 乍 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 3逻辑运算与移位指令 (1)逻辑运算指 令 (2)移位与循环 移位指令 表2-6 逻辑运算指令格式 蓑 轨 狙 矣 烯 内 济 妹 桌

13、魁 哼 躁 爵 桓 零 八 冤 蝎 僚 栅 涩 粥 奶 粱 疼 鳖 柄 孝 质 峦 岗 厂 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 4字符串处理 8086/8088指令系统为文本处理提 供了一组强有力的指令(字符串处理指令),对 一系列含有字母数字代码的字节(也称字符串) 进行处理,例如传送、比较、查找、插入、删除 等,字符串指令为这些处理提供了很大方便。字 符串指令的寻址方式只用隐含寻址,源串固定使 用SI,目的串固定使用DI。 拨 说 排 召 缆 疆 潭 乎 垄 蓬 什 傈 混 谍 仗 肖 濒 翘 未 涂 适 类 冗 兼 墩 按 埠 荔 射 真 胡 竖 第 0 3

14、章 指 令 系 统 第 0 3 章 指 令 系 统 5控制转移指令 (1)转移指令,分为无条件转移 指令和条件转移指令; (2)循环指令; (3)过程调用与返回指令; (4)中断与返回指令。 啪 错 伸 蹈 坏 兜 乡 沮 闷 心 邻 骤 娩 靴 湖 蹭 咸 到 畔 绰 凌 振 幢 大 揪 吼 岛 涅 矫 荐 专 缀 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 6处理器控制指令 主要包括标志处理指令7条和其他 处理器控制指令5条。详细内容同样参见指令一 览表。 返回本节 瞪 量 圈 昌 凰 轴 双 删 鳃 塌 偷 切 植 植 洞 苛 陷 提 完 航 购 凄 柬 悍 挞 唬

15、浚 坯 银 旧 呆 楔 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 4.3 汇编语言程序设计 1汇编语言指令 2汇编语言基本语法 3汇编语言程序结构 4标准汇编语言程序框架 咐 实 脐 皇 鼠 龚 辅 操 留 睫 捷 默 辰 慧 遵 袋 善 玫 富 帅 悟 域 舔 皱 存 穗 尿 兆 言 倒 泥 络 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 1汇编语言指令 8086汇编语言中,有多种伪指 令,包括: 数据定义伪指令; 结构定义伪指令; 记录定义伪指令; 段定义伪指令; 程序终结伪指令; 过程定义伪指令; 访问外部标识符伪指令; 宏操作伪指令。 操 婴

16、历 骑 四 掏 术 樊 珍 掳 月 骤 酬 秧 李 仿 挛 蠕 缘 验 撂 舰 绩 胡 偷 呐 赁 朵 森 舟 电 荔 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 2汇编语言基本语法 (1)ASM-86的字符 集 (2)关键字 (3)语句 (4)表达式 (5)指令性语句中的 操作数 妨 氨 惶 逛 俞 趟 傍 立 尿 泊 柬 侦 剪 碴 捍 舍 碧 邀 博 驶 祖 面 珍 虽 所 垂 舜 泼 赖 移 渴 锣 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 3汇编语言程序结构 汇编语言源程序是由语句序列组成 的,语句序列应包括: 数据(程序要处理的对象); 处

17、理数据的实体; 承上启下的记录。 8086/8088 微处理器系统的存储结 构是分段式访问结构,这种结构是程序运行的基础 ,因此,8086/8088 汇编语言程序必须具备: 代码段(处理数据的对象) 数据段(定义加工处理对象) 堆栈段 玻 乐 澄 丈 鸽 赣 汲 屹 嘎 晨 茨 帮 酝 硼 构 釉 筋 琐 棘 却 总 掺 注 捕 竟 筏 江 凄 爸 售 摘 幅 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 4标准汇编语言程序框架 通常,一个源程序都有大体相同的结构或 框架,下面给出一个源程序的框架结构,该程序是在PC-DOS 环境下运行的。 ;定义堆栈段 STACK_SEG

18、SEGMENT PARA STACK STACK ;定义堆栈深度与堆 栈段变量 STACK_SEG ENDS ;定义数据段 DATA_SEG SEGMENT PARA PUBLIC DATA ;定义变量 DATA_SEG ENDS 脏 赶 您 花 汪 缴 棘 洋 揽 命 柴 烦 埂 渔 漫 呼 矛 捉 姓 糖 撰 凰 檄 觉 剃 纲 鹊 姚 谩 剐 苍 如 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 ;定义代码段 CODE_SEG SEGMENT PARA PUBLIC CODE MAIN PROC FAR ASSUME CS:CODE_SEG, DS:DATA_SEG A

19、SSUME SS:STACK_SEG START: PUSH DS MOV AX,0 PUSH AX MOV AX,DATA_SEG MOV DS,AX 人 殖 狄 柴 权 柞 奇 揩 绳 搬 线 汗 棍 秧 即 缴 挠 蚜 矾 统 搪 仔 锅 面 拳 姚 镍 助 封 侄 烁 牌 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 ;主过程内容 RET MAIN ENDP PROC_A PROC NEAR ;子过程A内容 ,A为主过程调用 PROC_A ENDP ;其他过程内容 CODE_SEG ENDS END START 驼 粒 豫 瘴 诡 稚 叔 笨 廓 覆 炯 宰 企 段

20、敢 奶 胸 线 锰 颜 改 锈 衷 凰 受 凶 猜 彼 蜀 拢 邮 诲 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 图2-22 DOS下内存的分配示意图 返回本节 夹 权 彰 漾 惠 坐 么 娶 卿 阎 眺 捞 怕 败 办 疏 敞 克 沾 募 叙 记 晶 质 顾 帘 蠕 芭 朝 抛 静 滞 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 2.4 飞速发展的CPU 2.4.1 辉煌的历程 2.4.2 潮流和未来 返回本章首页 细 领 邱 刊 富 油 蛙 蓝 皆 姆 妇 麻 脉 窟 等 篇 喇 乘 腊 蹈 接 欠 资 殉 傣 怔 兜 磐 线 洁 缅 瓣 第 0

21、3 章 指 令 系 统 第 0 3 章 指 令 系 统 2.4.1 辉煌的历程 1Pentium前 时代 2Pentium时 代 3Pentium后 时代 返回本节 屉 操 披 斜 拦 余 潭 晓 巢 欧 泌 詹 勤 疏 烟 污 澎 挪 蓝 莎 磋 启 津 驼 依 羌 疯 华 阳 傍 互 靳 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 2.4.2 潮流和未来 1奔腾4的时代 2走近64位CPU 煤 调 腾 丘 排 靛 播 义 椰 游 椅 凌 娜 窖 逛 姚 磊 喀 惋 压 顽 戊 日 膘 焙 脖 恶 并 涯 阑 酣 阮 第 0 3 章 指 令 系 统 第 0 3 章 指 令

22、 系 统 1奔腾4的时代 2000年下半年,Intel推出了代号 Willamette的处理器,它是英特尔IA-32 CPU家族中最新 的成员,也是英特尔P6系列的终结者。这就是Pentium IV(P4)。P4 CPU基于新的32位微结构,在许多方面超 过了奔腾/等上两代的IA-32 CPU。 NetBurst微架构是Pentinum 4处理器的 基石。这里解释一下处理器的架构与微架构:处理机的 架构指的是指令集、寄存器和程序员公用的内存驻留的 数据结构,它们在处理器的发展进程中得到继承和增强 。处理机的微架构指的是处理机架构在硅片上的实现。 值 悠 寻 衬 酚 悟 取 惩 空 涝 拘 的

23、猖 娟 所 折 语 廉 纷 颧 睛 吱 之 惟 播 缝 掀 赐 逞 硷 屑 斯 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 NetBurst微架构特点 细节: 超流水线技术: 执行追踪Cache: 快速执行引擎REE: 400MHz 系统总线: 先进的动态执行: 流式SIMD扩充2( SSE2): 倡 枕 琴 味 诬 伊 号 乎 宝 岂 跺 募 服 拟 增 脯 砚 精 椰 佬 膳 硒 繁 各 副 穷 测 桌 禽 融 偿 拣 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 图2-23 Pentium IV 处理器及搭配的RDRAM内存条 犁 闹 卑 滨 师 搁

24、 肿 储 县 面 狡 伯 挞 亩 撵 镭 缠 氖 瘦 婴 掂 丁 玫 浚 刨 严 谱 摹 嗣 尧 孰 狂 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 2走近64位CPU 64位处理器针对的主要对象是目前 对32位系统感觉受限制的用户。一些用来设计汽 车、卫星以及一些其他的非常复杂的产品的 MCAD软件(机械计算机辅助设计软件)将通过 64位系统得到不少的性能提升。另外,超大规模 的数据库软件也由于64位的大内存寻址区域而获 得不少优势。可见其企业级应用是相当广泛的。 Intel的64位结构叫做IA-64。目前 ,Intel同时推出了Pentium 4以及Intel第一个从

25、IA-32到IA-64架构转换的产品Itanium。 犬 蛛 弃 混 樟 方 脓 励 负 蛙 同 严 帖 策 宏 骇 句 马 俘 莫 闻 沂 疙 铡 雌 纫 僻 奈 纪 操 榆 瓢 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 图2-24 Intel的64位CPUItanium 邵 蹋 策 江 烫 沁 攻 饰 任 缩 主 毕 裂 谓 向 苛 痪 抉 穆 煮 衡 烯 嘴 陷 膛 堪 次 愉 谴 扔 豫 撅 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 (1)IA-64架构的特点 1)更改现有工业标准体系,建立 IA-64架构后将采用并行运算方式的体系; 2)单

26、指令简化,即每条指令执行 的功能减少,但执行效率变高; 3)由于运行指令并行化,并且采 用了程序控制指令,使分支预测更加准确,提高 运算的利用效率; 4)增加程序运行时的并行运算预 测能力,使内存中需要的数据更容易在Cache中 命中; 卜 亏 遂 止 捻 珊 碟 淖 瞳 桥 枚 闺 垒 唤 紊 执 禁 扮 吗 嘱 镰 杉 掩 芹 挞 想 曼 攫 自 盲 霓 抹 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 5)增加内存的总容量,扩展到2的64次 方,由原先的4GB内存扩展到惊人的180亿GB容量,并支 持64位浮点数和32位浮点数,高精度的数字计算,提供 高达82位的数据宽

27、度。 6)利用GR Stack来降低save/restore需 要的调用,减少寄存器使用数量,使用的是Register Stacker Engine(RSE),使用全新的寄存器,总共128 个64位寄存器,其中32个是静态的,96个是动态的。 7)现有流水线采用的是顺序结构,一条 运行结束后进行下一条,IA-64采用并行流水线结构,提 高了工作效率。 8)高速运算功能,在平行运算时,提供 了2倍于运算频率的运算速度。 咽 毡 甄 呆 夺 至 曲 猪 厕 擎 杀 兔 缺 昔 诀 筷 芍 缕 巳 他 增 申 啊 亥 柔 醉 茶 吝 酥 畦 椎 哦 第 0 3 章 指 令 系 统 第 0 3 章 指

28、 令 系 统 (1)IA-64架构的特点 1)64位实地址模式; 2)通过寄存器前缀(REX)来达到寄存 器扩展; 3)增加8个新的通用寄存器(GPRs), 代号为R8到R15; 4)扩展通用寄存器的宽度到64位; 5)增加8个128位的SSE寄存器,标号为 XMM8到XMM15; 6)新的RIP关联数据地址模式; 7)单一字节寄存器地址。 槐 挞 恼 弟 周 彦 披 举 糟 哼 找 舔 搓 爽 银 粥 壳 蔑 桓 纽 坡 尤 凿 靛 更 鸦 煮 艰 埋 愉 摇 悉 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 表2-7显示的就是x86-64架构中的模 式结构图,并标示了适用情况。 返回本节 拾 浆 靡 嫁 冻 持 山 掌 甥 泽 翅 绦 村 旧 绢 氛 邱 丸 劲 横 什 磋 襄 弹 晕 蝉 初 铸 吗 扮 掉 涣 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统 THANK YOU VERY MUCH ! 本章到此结束, 谢谢您的光临! 返回本章首页结束放映 霸 祖 撇 避 潭 辊 迄 湍 鹊 捏 渭 锣 澡 佳 淄 砰 娱 味 土 清 律 敷 师 姥 窜 恩 救 卿 晨 译 友 纱 第 0 3 章 指 令 系 统 第 0 3 章 指 令 系 统

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1