ImageVerifierCode 换一换
格式:DOCX , 页数:53 ,大小:52.71KB ,
资源ID:16159104      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16159104.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微机原理及应用第三章指令系统Word文档下载推荐.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

微机原理及应用第三章指令系统Word文档下载推荐.docx

1、 8086CPU的操作码段 一字节操作码 二字节操作码 3: 8086CPU的操作数段 操作数段字节数从 0 字节到 4 字节, 由寻址方式确定 操作数的存在形式 1): 隐含在操作码段 操作数本身 3): 操作数在寄存器中 4): 操作数在存储器中C: 指令中的操作数 无操作数, 指令中虽未显示给出操作数, 但操作数存在 单操作数, 指令中仅有源操作数或者目的操作数出现 双操作数, 指令中有源操作数, 目的操作数出现 二: 8086CPU通用指令格式 计算机中的指令集 复杂指令集 CISC(Complex Instruction Set Computer) 指令比较复杂, 每条指令的字节长度

2、不一致, 指令种类多 以Intel公司为代表的CPU, 例如8086CPU芯片 精简指令集 RISC(Reduced Instruction Set Computer) 指令比较简单, 每条指令的字节长度一致, 指令种类少 以IBM公司为代表的CPU, 例如POWER PC芯片2: 8086CPU指令为可变字节机器码,由1 6 字节机器码组成 A: 一字节操作码指令格式: 特殊性和规律性 B: 二字节操作码通用指令格式: 由80页图3-1定义例: 指令助记符 机器码 字节数 操作数存在形式 DAA 27H(码) 1 隐含在操作码中 PUSH AX 50H(码) 1 隐含在操作码中 MOV AL

3、, 20H B0H(码),20H(数) 2 操作数本身 MOV CX, AX 8BH, C8H(码) 2 操作数在寄存器中 MOV AX, 3000H B8H(码),00H,30H(数) 3 操作数本身ADD AX, BX+2000H 03H,87H(码),00H,20H(数) 4 操作数在存储器中 A: B1字节的定义(基本操作码定义) b2 b7 (OP) 26 = 64种基本的操作码头b1 (D) 寄存器操作数的位置 注: D 值影响 B2 中 REG 的确定 D = 0 寄存器操作数为源操作数 D = 1 寄存器操作数为目的操作数 b0 (W) 操作数的类型 W = 0 字节操作数,

4、8bit W = 1 字操作数, 16bit B2字节的定义(寻址方式定义) b6 b7 (MOD) 寻址方式定义 b7,b6 = 11 寄存器寻址方式 b7,b6 != 11 存贮器寻址方式 b3 b5 (REG) 寄存器名编码b5 b4 b3W = 0 ( 8位寄存器)W = 1 ( 16位寄存器)0 0 0ALAX0 0 1CLCX0 1 0DLDX0 1 1BLBX1 0 0AHSP1 0 1CHBP1 1 0DHSI1 1 1BHDI b0 b2 (R/M) 寄存器名/存贮器寻址方式编码 寄存器名编码同上b2 b1 b0MOD = 00MOD = 01MOD = 10BX+SIBX+

5、SI+D8BX+SI+D16BX+DIBX+DI+D8BX+DI+D16BP+SIBP+SI+D8BP+SI+D16BP+DIBP+DI+D8BP+DI+D16SISI+D8SI+D16DIDI+D8DI+D16未用BP+D8BP+D16 1 1 1BXBX+D8BX+D16 B3 B6字节的定义 (操作数或操作数存放的方式定义) 操作数段的字节数量由操作码功能及操作数位数确定 例: 指令 MOV CX, AX 的机器码为 8BH, C8H, 分析机器码 B1 = 8BH = 10001011B OP = 100010 基本操作码头 D = 1 CX为目的寄存器操作数, CX在B2中的REG

6、编码 W = 1 CX, AX 为字操作数, AX在 B2中的 R/M 编码 B2 = C8H = 11001000B MOD = 11 寄存器寻址方式 REG = 001 目的寄存器操作数 CX 的编码 R/M = 000 源寄存器操作数 AX 的编码 指令 MOV AX, CX 的机器码为 8BH, C1H, D = 1 AX为目的寄存器操作数, AX在B2中为REG编码 W = 1 AX, CX 为字操作数, CX 在 B2中为R/M 编码 B2 = C8H = 11000001B REG = 000 目的寄存器操作数 AX 的编码 R/M = 001 源寄存器操作数 CX 的编码 注:

7、 在寄存器寻址方式(源, 目的操作数均为寄存器), D必为1, 即指向目的寄存器,相同指令形式时, 机器码 B1字节不变, B2字节变 C: 指令ADD AH, BX+20H 的机器码为 02H, 67H,20H, 分析机器码 B1 = 02H = 00000010B OP = 000000 基本操作码头 D = 1 AH为目的寄存器操作数,AH在B2中为REG编码 W = 0 AH为字节操作数, BX+20H在B2中为R/M 编码 B2 = 67H = 01100111B MOD = 01 存储器寻址方式 REG = 100 目的寄存器操作数 AH 的编码 R/M = 111 源存储器操作数

8、 BX+D8 的编码 B3 = 20H 存储器相对寻址中的D8值 D: 指令ADD BX+20H, AH 的机器码为 00H, 67H, 20H, 分析机器码 B1 = 00H = 00000000B D = 0 AH为源寄存器操作数,AH 在 B2中为 REG 编码 W = 0 AH 为字节操作数, BX+20H在B2中为R/M 编码 REG = 100 源寄存器操作数 AH 的编码 R/M = 111 目的存储器操作数 BX+D8 的编码 在存储器寻址方式(源,目的操作数分别为寄存器及存储器), D可变, 并且总是指向寄存器, 相同指令形式时, 机器码 B1字节变, B2字节不变3.2 8

9、086CPU 的寻址方式定义: 确定操作数存在的方式, 称为寻址方式 寄存器寻址方式 定义: 操作数隐含在寄存器中1: 一字节操作码形式 (与图3-1定义无关)指令助记符机器码功 能 PUSH AX50H(码)(AX) SS:SP POP BX5BH(码)(BX) SS: 二字节操作码形式 (遵循图3-1定义)功能MOV AX, BX8BH,C3H(码)(AX) (BX) 16位MOV CL, BH8AH,CFH(码)(CL) (BH) 8位 AX 寄存器名, (AX) 寄存器中的值, 表示存储器注: PUSH AL 错 堆栈操作必须为16位 MOV CL,BX 错 源, 目的操作数数据类型必

10、须一致二: 立即寻址方式 (与图3-1定义无关) 定义: 操作数真实地在操作码后, 既操作数为指令的一部分在代码段中 8位立即数形式 MOV AL, 20H B0H(码), 20H(数) (AL) = 20H 16位立即数形式 MOV AX, 2000H B8H(码), 00H,20H(数) (AX) = 2000H例将立即数 2050H赋给寄存器 AX, BX的指令编程 立即寻址方式 MOV AX, 2050H 3字节机器码MOV BX, 2050H 3字节机器码, 共 6 字节 寄存器寻址方式 MOV BX, AX 2字节机器码, 共 5 字节三: 存储器寻址方式 操作数段为操作数存放的地

11、址值, 而非真实操作数 特点: (1). 寻址方式多样, 灵活, 应用广泛 (2). 需进行地址运算, 相对速度较慢 条件: 指令中仅有一个存储器操作数,可以是源或者目的操作数 形式: 存储器操作数助记符表示为 直接寻址方式 (与图3-1定义无关) 操作数存在于用直接数表示的地址单元中 直接数为隐含段 DS 内的偏移地址 MOV AX, 2000H 实际地址 PA = DS * 16 + 2000H 指令机器码 A1H(码), 00H, 20H(数) 指令的功能 (AX) = 2000H 错 (AX) = 2000H 对 操作数的获得 若在 DS 段中, 偏移地址 2000H 单元中的值为 4

12、5H, 2001H 单元中的值为 30H, 则 (AX) = 3045H 段超越前缀 概念: 从 DS 段外的其它段中寻找操作数 MOV AX, 2000H 省略段符时, 隐含为 DS 段 MOV AX, DS:2000H 给出段符时,确定了操作数的段特性 段超越前缀机器码的定义 0 0 1 b4 b3 1 1 0 b2, b1, b0 = 110, b7, b6, b5 = 001为固定值,b4,b3编码表示段寄存器名b4 b3段寄存器名段超越前缀机器码001 0 0 110 ES 26H001 0 1 110 CS 2EH001 1 0 110 SS 36H001 1 1 110 DS 3EH 段超越前缀机器码出现在操作码的前面 MOV AX, 2000H 机器码: A1H(码), 00H,20H(数)MOV AX, DS:2000H 机器码: 3EH(缀), A1H(码), 0

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1