网站大量收购独家精品文档,联系QQ:2885784924

微机原理及应用CH5 8086/8088汇编语言程序设计.ppt

微机原理及应用CH5 8086/8088汇编语言程序设计.ppt

  1. 1、本文档共87页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理及应用CH5 8086/8088汇编语言程序设计

? 编制汇编语言源程序时,首先要使用段定义伪指令和段寻址伪指令来构造一个由若干指令和数据组成的程序。构造一个源程序的框架结构有如下两种格式:;第一种格式: …… MOV AH,4CH ;返回DOS INT 21H CODE ENDS END BEGIN ;第二种格式: …… RET ;取程序段前缀首地址 MAIN ENDP CODE ENDS END BEGIN;区别:两种格式的本质区别在于返回DOS的方法不同: 对于第一种格式,采用了调用DOS系统的4CH功能,返回DOS。具体方法是:在要返回DOS处,安排如下两条指令: MOV AH,4CH INT 21H 对于第二格式,DOS返回方法是调用20H类型的中断服务程序。;段名   SEGMENT  [定位类型][组合类型][类别] . . . 段名   ENDS;定位类型,定位类型参数是对该段起始地址的定位。定位类型参数主要有下面4种: ①PARA:指定定位段的起始地址必须在节的整数边界,即段的首地址必须是16的整数倍。当定位类型缺省时,就当成PARA。 ②BYTE:指定定位段的起始地址定位在存储单元的任何字节地址。 ③WORD:指定定位段的起始地址定位在字的边界,即段的首地址必须是偶数。 ④PAGE:指定定位段的起始地址定位在页的边界,即段的首地址必须是256的整数倍。;组合类型:组合类型参数主要提供了各个逻辑段之间的组合方式 ①NONE:该段与其他同名段不进行连接,各段独立于存储器中,NONE可作为缺省参数。 ②PUBLIC:该段与其他模块中的同名段连接时,由低地址到高地址连接起来,组成一个逻辑段,连接次序由连接命令指定。 ③COMMON:该段在连接时与其他模块中的同名段有相同的起始地址,采用覆盖的方式在存储器中存放,连接长度为各分段中最大长度。 ;④AT表达式:定位该段的起始地址在表达式所指定的节(16的整数倍)边界上。当用户要求某个逻辑段在指定节的边界上时,就要用AT参数来实现。 ⑤STACK:指定该段为堆栈段,此参数在堆栈段中不可省略。 ⑥MEMORY:定位该段与其他模块中的同名段有相同的首地址,采用覆盖的方法在存储器中组合连接。其功能与COMMON相似,区别是第一个带MEMORY参数的逻辑段覆盖??其他同名段的最上层,其他带此参数的同名段按照COMMON方式处理。 ;“分类名”(CLASS NAME) 其主要作用是汇编程序连接时将所有的分类名相同的逻辑段组成一个段组。;在连接之前已定义两个目标模块如下: 模块1 SSEG  SEGMENT PARA STACK DSEG1 SEGMENT PARA PUBLIC Data DSEG2 SEGMENT  PARA CSEG  SEGMENT  PARA Code 模块2 DSEG1 SEGMENT PARA PUBLIC Data DSEG2 SEGMENT  PARA CSEG  SEGMENT  PARA Code ;以上两个模块分别汇编后产生 .OBJ 文件,经连接程序连接后产生的 .EXE模块如下:   模块1   CSEG  SEGMENT  PARA Code   模块2   CSEG  SEGMENT  PARA Code   模块1+2 DSEG1 SEGMENT  PARA PUBLIC Data   模块1   DSEG2 SEGMENT  PARA   模块2   DSEG2 SEGMENT  PARA   模块1   SSEG  SEGMENT  PARA STACK ; 顺序程序结构是指完全按照顺序逐条执行的指令序列。 图5.1 顺序程序的结构形式 ;例5.1:试分别用汇编语言源程序的两种框架结构编制程序,求出表达式:(X×4-Y)/2的值,并保存到RESULT存储单元中,其中X,Y均为字节变量。;参考程序1: DATA SEGMENT ;数据段 X DB 2 Y DB 4 Z DB ? ;定义变量 DATA ENDS STACK SEGMENT PARA STACK DW 20H DUP(0) STACK ENDS CODE SEGMENT ;代码段 ASSUME CS:CODE,DS:DATA,SS:STACK;BEGIN:MOV AX,DATA

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档