微机原理与接口技术_04汇编语言程序设计.pptxVIP

微机原理与接口技术_04汇编语言程序设计.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微机原理与接口技术_04汇编语言程序设计

本教案内容;在实际工作中经常要利用汇编语言进行程序设计,为此,应该按照下列步骤进行:;③编写程序:根据程序流程图及所用CPU指令系统,采用汇编语言进行编程设计;①必须详细了解CPU的编程模型、指令系统、寻址方式及相关伪指令;; 我们知道,8086/8088 CPU的地址空间是分段结构的,程序中出现的数据与代码以及程序中用到的堆栈都必须纳入某个段中。那么,如何告诉汇编程序,源程序中的哪些内容属于数据段,哪些属于代码段呢?这自然是由汇编系统中提供的伪指令来实现的。下面我们首先介绍构成完整程序的有关伪指令。;格式: 段名 SEGMENT [定位类型][组合类型][′类别′] ;段定义开始伪指令 指令语句或伪指令语句组成的段的实体 段名 ENDS ;段定义结束伪指令;①段名: 段名是所定义的段的名称,其构 成规则与语句的名称一样。;其中,格式中的定位类型、组合类型和类别外面的方括号不是语法符号,它表示该项是可以省略的。;②定位类型: 告诉汇编程序(MASM.EXE)对该段汇编时,该段的起始边界的要求。其类型有PAGE、PARA、WORD、BYTE四种。这四种类型的边界地址的要求如下:;③组合类型: 告诉连接程序(LINK.EXE)在进行多模块目标程序连接时,该段与其它段连接的有关信息,如本段与其它段是否组合为同一段;组合后,本段信息与其他段信息的关系如何等。;④类别: 类别可以是任何一个合法的名称,但必须用单引号括起来。在多模块程序设计中,连接时,将把不同模块中相同‘类别’的各段在物理上相邻地连接在一起,其顺序亦与LINK时提供的各模块顺序一致。当类别相同的各段的段名不同时,它们连接后虽在同一物理段内,但它们仍不属于同一段,也就是它们的段基址不相同。这样做的一个好处是便于程序的固化。在编程时,它们都是独立的代码段,各段有各自的段基址,但连接后,他们却在同一物理段,从而可以固化在一起。;二、ASSUME伪指令;ASSUME CS:CODE,DS:DATA,ES:DATA MOV AX,DATA MOV DS,AX ;对ES初始化 MOV ES,AX;3、END伪指令;4、LABEL伪指令; LABEL伪指令的功能是定义某变量名??标号的类型的。它虽具有段地址与偏移地址的属性,但它不占内存单元。 例如: BARRAY LABEL BYTE AARRAY DW 100 DUP(?);BARRAY;5、=伪指令和EQU伪指令;6、ORG伪指令;7、汇编语言源程序的完整结构; DATA2 SEGMENT DATA2 ENDS CODE SEGMENT ASSUME CS:CODE , DS:DATA1 ASSUME ES:DATA2 , SS:STACK START: MOV AX , DATA1 MOV DS , AX ;DS初始化 MOV AX , DATA2 MOV ES , AX ;ES初始化; MOV AX , STACK MOV SS , AX ;SS初始化 MOV SP , OFFSET TOP MOV AH,4CH INT 21H ;程序结束,返回DOS操作系统 CODE ENDS ;代码段定义结束 END START ;整个程序结束;汇编语言的基本编程过程可以总结成表4.2所示 ;一、编辑源程序 利用编辑程序“记事本”等编写源程序,其规则应该遵循8086 CPU的指令系统的要求,源程序名的扩展名必须为ASM。;三、连接程序 连接程序LINK将目标程序连接成可执行文件。; 一、顺序结构程序设计 顺序结构是一种最简单的程序设计结构形式。采用这种结构只能完成简单的任务程序设计。顺序结构在任何结构的程序中都会出现,因此说它是基础。;二、分支结构程序设计 在解决某些实际问题时, 解决问题的方法随着某些条件的不同而不同,将这种在不同条件下处理过程的操作编写出的程序称为分支程序。; 程序分支是通过有条件转移指令实现的,它们又与上一次CPU操作所产生的PSW中的标志位有关,有条件指令与标志位的关系可以参见第三章的表3.6。; 注意:有些指令的执行对PSW的标志位没有影响,而且有条件转移指令的转移范围为-128

文档评论(0)

celkhn5460 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档