第4章汇编语言程序设计

第4章汇编语言程序设计

ID:21287459

大小:160.00 KB

页数:42页

时间:2018-10-20

第4章汇编语言程序设计_第1页
第4章汇编语言程序设计_第2页
第4章汇编语言程序设计_第3页
第4章汇编语言程序设计_第4页
第4章汇编语言程序设计_第5页
资源描述:

《第4章汇编语言程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章 汇编语言程序设计movax,12hcalldisplayJmp1234h1主要内容:汇编语言源程序的结构汇编语言语句格式伪指令功能调用汇编语言程序设计24.1汇编语言源程序机器语言——二进制数形式的指令和数据。B064是什么意思?这就是机器语言。既不直观,又不易理解和记忆.MOVAL,64H;很容易记忆理解,这就是助记符。助记符——用便于记忆的英语单词表示的指令操作码。它反映了指令的功能和主要特征,便于人们理解和记忆。3操作数可能放在存储器中,这就涉及操作数的地址。程序中遇到转移指令或调用指令,也需要

2、知道转移地址,若采用具体地址就很不方便,一旦有错,改动也很麻烦。于是人们采用标号或符号来代替地址,例:LP1:movax,VAR…loopLP1汇编语言——指令助记符,符号地址,标号,伪指令等语言元素的集合以及这些元素使用的规则。用汇编语言编写的程序叫汇编语言源程序。指令除了操作码以外,还有一个操作数问题。4汇编程序源程序的编译程序汇编程序汇编语言源程序机器语言目标程序汇编源程序需翻译成机器语言,变成可执行文件,机器才能执行,这个翻译过程叫汇编。——高级语言中称该过程为“解释”或“编译”。执行翻译的程序称为“

3、汇编程序”。5汇编语言程序设计与执行过程输入汇编语言源程序源文件.ASM汇编(编译)目标文件.OBJ链接可执行文件.EXE调试最终程序64.1.1汇编语言源程序的结构汇编语言源程序通常由一个或几个程序模块组成,每个模块一般由三个逻辑段组成:数据段——存放数据、变量堆栈段——堆栈区域代码段——存放程序指令7一个基本的汇编语言程序框架如下:stackSEGMENTPARA‘stack‘DB100DUP(‘stack’)stackENDSdataSEGMENT<数据、变量在此定义>dataENDScodeSEGME

4、NTASSUMECS:code,DS:data,ES:datastart:MOVAX,dataMOVDS,AXMOVES,AX<此处加入你自己的程序段>MOVAL,4CHINT21HcodeENDSENDstart堆栈段数据段代码段84.1.2汇编语言的语句与格式汇编语言的语句有两种:指令性语句——由8086指令助记符构成的语句指示性语句——由伪指令构成的语句指令性语句的格式为:标号:指令助记符目的操作数,源操作数;注释指示性语句的格式为:名字伪指令操作数1,操作数2,…,操作数n;注释注:各部分之间至少要用

5、一个空格作为分隔符。9●指令性语句由CPU执行,每一条指令性语句都有一条机器码指令与其对应;●指示性语句由汇编程序执行。它指出汇编程序应如何对源程序进行汇编,如何定义变量、分配存储单元以及指示程序开始和结束等。指示性语句无机器码指令与其相对应。指令性语句汇编时生成机器码; 指示性语句汇编时不生成机器码。10语句的构成元素:标号——指令的符号地址,用来代表指令在存储器中的地址。只能出现在指令性语句中,标号后应加上冒号。名字——段、过程、变量的名字,用来代表它们在存储器中的地址。只能出现在指示性语句中,名字后不加

6、冒号。指令助记符——8086助记符、伪指令操作数——即指令的操作对象对指令性语句——0,1,2个对指示性语句——根据需要而定操作数之间以逗号分隔操作数可以是:寄存器、存储单元、常数或表达式例如:AX,[DI+BX+10],200,16*8+TABLE,等等11注释——以分号开头,可放在指令后,也可单独一行。注意注解的写法。要写指令(段)在程序中的作用,而不要写指令的操作。例如:以下为同一条指令写的注释1)MOVCX,100;传送100到CX2)MOVCX,100;循环计数器置初值显然,第二种写法要比第一种写

7、法要好。12汇编语言的一个实例:hello.asmdataSEGMENTHelloDB‘Hello,world!’,0DH,0AH,’$’dataENDSprogSEGMENTASSUMECS:prog,DS:datastart:MOVAX,dataMOVDS,AXLEADX,hello;取字符串首地址MOVAH,9INT21H;显示字符串MOVAH,4CHINT21H;退回DOSprogENDSENDstart名字标号134.1.3数据项与表达式数据项包括常量、变量、标号及表达式。1.常量二进制数,以B结尾

8、。如01001101B。十进制数,如85。十六进制数,以H结尾。第1个数字为A-F时,前面应加0,如0F160H。字符串:用引号括起来的1个或多个字符。如‘ERROR!’,’a’,汇编时被翻译成对应的ASCII码45H,52H,52H,4FH,52H,21H和61H。14有三个属性:段地址:即标号所在段的段地址;偏移量:标号所代表存储单元的段内偏移地址;类型:NEAR或FAR:NEAR—表示标号所在

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

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

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