- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二章 微处理器指令系统 华北电力大学 计算机系 刘丽 2.2 8088/8086的寻址方式 从8088/8086的指令格式入手,论述: 立即数寻址方式 寄存器寻址方式 存储器寻址方式 进而熟悉8088/8086汇编语言指令格式,尤其是其中操作数的表达方法 为展开8088/8086指令系统做好准备 指令的组成 操作码说明计算机要执行哪种操作,如传送、运算、移位、跳转等操作是 操作数是指令执行的参与者,即各种操作的对象 有些指令不需要操作数,通常的指令都有一个或两个操作数,也有个别指令有3个甚至4个操作数 操作数的寻址方式 寻找操作数的方式(或操作数的存放形式),称为操作数的寻址方式 操作数采取哪一种寻址方式 影响处理器执行指令的速度和效率 对程序设计也很重要 寻址方式主要有三种: 立即数寻址方式:操作数存放在操作码之后 寄存器寻址方式:操作数存放在cpu内部寄存器中 存储器寻址方式:操作数放在存储器中 一些概念 源程序:用户为解决问题用各种语言所编写的程序 汇编语言源程序由语句序列构成,每条语句一般占一行(不超过132个字符,Masm6.0后可以是512个) 语句分为: 执行性语句:用于表达处理器指令(也称为硬指令),汇编后对应一条指令代码。执行性语句格式为: 标号:硬指令助记符 操作数,操作数;注释 标号表示指令在主存中的逻辑地址,可有可无,多用于循环,分支等程序的转移地址 目的操作说一般在逗号之前,还用来存放指令操作的结果,逗号之后为源操作数 一些概念 说明性语句:用于表达伪指令,指示源程序如何汇编、变量如何定义,过程如何设置等,格式为: 名字 伪指令助记符 参数,参数,……;注释 名字可以是变量名,段名,子程序名等,反映逻辑地址 参数可以是常数、变量名、表达式等,可以多个,用逗号隔开 标识符(Identifier) 最多由31个字母、数字及规定的特殊符号(_、$、?、@)组成,不能以数字开头,不区分大小写 名字和标号是用户自定义的符合汇编语言语法的标识符 一些概念 保留字(Reserved Word) 主要由硬指令助记符、伪指令助记符、操作符、寄存器名及预先定义的符号组成,保留字不区分大小写 助记符 帮助记忆指令的符号,反映指令的功能 注释 说明语句的功能,为便于阅读而加上,不是必须的 必要时,一个语句行可以由分号开始作为阶段性注释 汇编程序在翻译源程序时自动跳过该部分,不对其做任何处理 语句的各个组成部分用冒号,逗号,分号,空格等作分隔符。MASM支持采用续行符“\” 2.2.1 立即数寻址方式 指令中的操作数直接存放在机器代码中,紧跟在操作码之后(操作数作为指令的一部分存放在操作码之后的主存单元中) 这种操作数被称为立即数imm 可以是8位数值i8(00H~FFH) 也可以是16位数值i16(0000H~FFFFH) 立即数寻址方式常用来给寄存器和存储单元赋值,多以常量形式出现 可以是二进制数(后缀为B或b),十进制数(无后缀,或D、d),十六进制数(后缀H或h,A~F开头时要开头加0),字符串(用单引号或双引号括起,表示对应的ASCII码) 还可以是标识符表示的符号常量、数值表达式 补充:DEBUG.EXE DEBUG.EXE DOS提供的、用于调试可执行程序的一个工具软件,也是可用于汇编语言程序设计的一种调试工具 Debug的命令都是一个字母,后跟一个或多个参数: 字母 [参数] A-汇编命令 输入汇编命令A?[地址],按回车 Debug提示地址,等待你输入新指令 输入汇编指令,按回车; 如继续输入汇编指令,直到输入所有指令 不输入内容就按回车,结束汇编,返回Debug的提示符状态 补充:DEBUG.EXE U-反汇编命令 用法: -U 代码段地址:起始偏移地址 如:-U CS:100 D-显示内存中的数据命令?? 用法: -D 数据段地址:存放数据的偏移地址 如:-D DS:0020 T-单步执行程序命令????? 用法: -T 要执行的指令条数?? 如:-T 3 R-查看和修改寄存器数据命令? 用法: -R 回车?? 如:-R AX? 补充:DEBUG.EXE G-连续执行程序命令 用法: -G=代码段地址:指令的起始偏移地址 指令的结束偏移地址? 如: -G=CS:100 106 注意: 结束地址一定要是操作码的所在地址 F-对内存单元填充数据命令???? 用法: -F 数据段地址:偏移首地址 偏移未地址 填入的数据? ?如: -F DS:100 120 ff Q-退出DEBUG 应用程序命令? 命令的使用中注意: 字母不分大小写 只使用1
文档评论(0)