IBM-PC汇编语言(④汇编语言程序格式).ppt

IBM-PC汇编语言(④汇编语言程序格式).ppt

ID:56527548

大小:236.50 KB

页数:78页

时间:2020-06-27

IBM-PC汇编语言(④汇编语言程序格式).ppt_第1页
IBM-PC汇编语言(④汇编语言程序格式).ppt_第2页
IBM-PC汇编语言(④汇编语言程序格式).ppt_第3页
IBM-PC汇编语言(④汇编语言程序格式).ppt_第4页
IBM-PC汇编语言(④汇编语言程序格式).ppt_第5页
资源描述:

《IBM-PC汇编语言(④汇编语言程序格式).ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、汇编程序功能伪操作汇编语言程序格式汇编语言程序的上机过程第4章汇编语言程序格式安徽理工大学计算机科学与技术系李敬兆《汇编语言》编辑程序.ASM文件汇编程序.OBJ文件连接程序.EXE文件Edit等MASMLINK汇编语言程序的建立及执行过程:在计算机上运行汇编语言程序的步骤是:用编辑程序(任何一种文本编辑程序)建立ASM文件;用MASM程序把ASM文件转换成OBJ文件;用LINK程序把OBJ文件转换成EXE文件;用DOS命令直接键入文件名就可执行该程序;4.1汇编程序功能汇编程序功能汇编程序的主要功能:检查源程序,给出出错信息。产生目标文件(.obj)和列表文件(.ls

2、t)。展开宏指令。安徽理工大学计算机科学与技术系李敬兆《汇编语言》4.2伪操作(伪指令)伪操作是汇编程序对源程序进行汇编时处理的操作,(不像机器指令那样是程序运行期间由计算机来执行的)完成处理器选择、存储模式定义、数据定义、存储器分配、指示程序开始结束等功能。处理器选择伪操作段定义伪操作程序开始和结束伪操作数据定义及存储器分配伪操作表达式赋值伪操作地址计数器与对准伪操作基数控制伪操作安徽理工大学计算机科学与技术系李敬兆《汇编语言》.8086选择8086指令系统.286选择80286指令系统.286P选择保护模式下的80286指令系统.386选择80386指令系统.386P选择保

3、护模式下的80386指令系统.486选择80486指令系统.486P选择保护模式下的80486指令系统.586选择Pentium指令系统.586P选择保护模式下的Pentium指令系统4.2.1处理器选择伪操作:这类伪操作一般放在程序的最前面,如不给出,则汇编程序默认值为.8086。安徽理工大学计算机科学与技术系李敬兆《汇编语言》4.2.2段定义伪操作:段定义伪操作的格式:段名SEGMENT[定位类型][组合类型][使用类型][‘类别’]…………;语句序列段名ENDS1)段名段名是为该段起的名字,用来指出汇编程序为该段分配的存储区起始位置。1.完整的段定义伪指令2)定位方式(1

4、)PARA:表示本段必须从能被16整除的地址处开始存放,即段起始地址最低四位必须是0。(2)WORD:表示本段要从一个偶数地址处开始存放,即段起始地址的最低一位必须是0。(3)BYTE:表示本段起始地址可以从任一地址处开始存放。(4)PAGE:表示本段要从能被256整除的地址处开始存放,即起始地址的最低八位必须是0。默认为PARA3)组合方式组合方式有六种类型可供选择。(1)PRIVATE该段为私有段,在连接时将不与其他同名段合并(2)PUBLIC该段在连接时可以把不同模块的同名段相连接而形成一个段。每一段从小段的边界开始,所以各段之间有小于16个字节的间隙。(3)COMMON

5、该段在连接时可以把不同模块中的同名段重叠而形成一个段,由于各同名段有相同的起始地址,所以会产生覆盖。(4)STACK把不同模块的同名段组合而成一个堆栈段。各段之间没有间隙。(5)MEMORY同PUBLIC(6)AT表达式使段地址是表达式所计算出来的16位值,CS除外。默认为PRIVATE【例】有两个模块,各模块段定义如下模块1:┆DATA1SEGMENTPARAPUBLIC‘DATA1’M1DB45HDUP(0)DATA1ENDSDATA2SEGMENTPARACOMMON‘DATA2’N1DB102HDUP(0)DATA2ENDSEND模块2:┆DATA1SEGMENTPAR

6、APUBLIC‘DATA1’M2DB104HDUP(11H)DATA1ENDSDATA2SEGMENTPARACOMMON‘DATA2’N2DB105HDUP(0)DATA2ENDSDATA3SEGMENTT1DB50DUP(20H)DATA3ENDSEND该段的定位组合方式示意图如图所示。4)使用类型USE16使用16位寻址方式段长≤64KUSE32使用32位寻址方式段长≤4G5)类别在引号中给出连接时组成的段组的类型名。在连接后形成的装入模块中,可使相同类别的段位置靠在一起。◆假定伪指令ASSUME格式:ASSUME段寄存器:段名[,段寄存器:段名]功能:建立段寄存器与段之

7、间的对应关系。该伪指令一般出现在代码段中。DATA1SEGMENTADB1,2,3DATA1ENDSCODESEGMENTASSUMEDS:DATA1,CS:CODE┆其中段寄存器名必须是CS,DS,ES和SS(对于386及后继机型还有FS和GS)中的一个。段名必须是由SEGMENT定义的段中的段名。◆段定义伪操作:完整的段定义格式举例datasegment;定义数据段…dataends;----------------------------------------extrasegment

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。