欢迎来到天天文库
浏览记录
ID:41360322
大小:924.06 KB
页数:74页
时间:2019-08-22
《微机原理第4章汇编语言语法和DOS功能调用》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第4章汇编语言语法和DOS功能调用教学内容4.1数据类型及其存储规则4.2汇编语言程序的格式4.3伪指令语句4.4汇编语言中的表达式4.5指令语句4.7DOS系统功能调用教学目标1理解汇编语言中的基本数据。2掌握汇编语言中的常用伪指令。3理解DOS系统功能调用。重点内容1汇编语言中的基本数据(标识符、常数、变量、标号)。2汇编语言中的常用伪指令。3汇编语言中的表达式(算术运算符、逻辑运算符、关系运算符、分析运算符、修改属性运算符、其他运算符)。4DOS系统功能调用。难点内容1汇编语言中的常用伪指令。2DOS系统功能调用。学时数4学时计算机程序设计语言一般可分为三种
2、:机器语言、汇编语言和高级语言。机器语言:也称机器码,是CPU唯一能够识别的语言,用不同数值的二进制数来表示要求CPU执行的命令,不同的CPU语言也不同,难以记忆和阅读。汇编语言:为了解决机器语言难以记忆和阅读的问题,用英文缩写来表示各种指令而生成的一种语言,它与机器语言基本是一一对应的。因此,汇编语言具有很高的执行效率。但也正因为这样,汇编语言也仍然与CPU相关联,不同的CPU要使用不同的汇编语言。在执行前要将其转换成CPU能够识别的机器码,这种转换称为汇编,由于汇编语言与机器语言基本是一一对应的,所以这种转换是唯一的。高级语言:独立于CPU之外,语句直观简练,
3、编程效率高。在执行前要将其转换成CPU能够识别的机器码,这种转换称为编译。不同的编译软件,编译后获得的机器码是不同的,好的编译软件,得到的机器码占用内存小、执行效率高,但是与汇编语言相比都有较大的差距。4.1汇编语言程序的格式例4.1试求小于100的所有非零偶数,并把结果存入以BUFF开始的内存区.1MY_DATASEGMENT2BUFFDB50DUP(?)3MY_DATAENDS4MY_CODESEGMENT5ASSUMECS:MY_CODE,DS:MY_DATA6START:MOVAX,MY_DATA7MOVDS,AX8MOVAL,29LEABX,BUFF10
4、LLP:MOV[BX],AL11INCAL12INCAL13CMPAL,10014JNZLLP15INC20H16MY_CODEENDS17ENDSTRAT汇编语言程序的格式可以归结为以下几点:(1)段的结构段名1SEGMENT语句1……语句i段名1ENDS段名2SEGMENT语句1……语句j段名2ENDS┋段名nSEGMENT语句1……语句k段名nENDSEND标号(2)语句的结构3种基本语句类型:指令语句伪指令语句宏指令语句语句一般有4个部分组成,即:标号或名字操作码操作数;注释标号或名字:这是一个任选部分,在语句之首,当语句为指令性语句时,它是标号,必须以“
5、:”结束。当语句为伪指令时,它是名字,没有结束“:”。注释:对程序的说明,任选,对程序不产生影响。必须以“;”开始。语句各组成部分之间至少有一个空格作为间隔。4.2汇编语言中的基本数据1、标识符标识符—由程序员自由建立起来的,有特定意义的字符序列。标识符的组成规则如下:①必须由字母、数字(0,…,9)及特殊符号(?,·,@,-,$)组成,且必须以字母打头。②字符总数限制在31个以内。③不能使用属于系统专用保留字(保留的字)。2、常数常数—语句中出现的那些固定值,除了自身的值以外,没有其它任何属性。常数分为两类(1)数值常数(2)字符串常数3、变量变量—存放在存储器
6、单元中的操作数,它的值是可以改变的,在程序中出现的是存储器单元地址的符号,即与某一数据项第一字节相对应的标识符。变量的3个属性:①段地址(SEG):变量所在段的段地址。②偏移地址(OFFSET):变量所在段内的偏移地址。③类型(TYPE):所定义的每个变量所占据的字节数。4、标号标号—可执行指令语句地址的符号表示,即用标识符来表示地址。标号的3个属性:①段地址(SEG):与标号对应的指令首字节所在的段地址。②偏移地址(OFFSET):与标号对应的指令首字节所在的偏移地址。③类型(TYPE):标号的类型属性有两种:NEAR和FAR类型。4.3伪指令语句伪指令语句可分
7、为以下几种类型:①数据定义伪指令语句②标识符赋值与解除伪指令语句③段定义伪指令语句④过程定义伪指令语句⑤程序开始与结束伪指令语句⑥方式定义伪指令语句⑦结构定义伪指令语句⑧分组伪指令语句⑨其它伪指令语句1、数据定义伪指令语句共有五条:DB、DW、DD、DQ和DT,分别用来定义字节、字、双字、8字节和10字节。指令格式:变量名助记符操作数1,操作数2,……操作数n;注释变量名助记符nDUP(操作数1,操作数2,……操作数n);注释功能:将操作数存入以变量名所指定的存储单元为首地址的存储区中,或者分配存储单元。nDUP()表示将括号内的操作数重复n次,n必须为正数。例4
8、-2操作数
此文档下载收益归作者所有