微机原理与汇编语言ppt课件.ppt
《微机原理与汇编语言ppt课件.ppt》由会员分享,可在线阅读,更多相关《微机原理与汇编语言ppt课件.ppt(145页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分封面第五章 汇编语言程序设计变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分5.1 5.1 汇编语言的基本概念汇编语言的基本概念 5.1.1 5.1.1 汇编语言源程序的格式汇编语言源程序的格式 5.1.2 5.1.2 汇编语言上机过程汇编语言上机过程 5.1.3 5.1.3 汇编语言程序和汇编语言程序和DOSDOS操作系统的接口操作系统的接口5.2 5.2 伪指令语句伪指
2、令语句 5.3 5.3 宏指令语句宏指令语句 5.4 5.4 常用系统功能调用和常用系统功能调用和BIOSBIOS中断调用中断调用5.5 5.5 汇编语言程序设计的基本方法汇编语言程序设计的基本方法5.6 5.6 汇编语言与汇编语言与C/C+C/C+语言的混合编程语言的混合编程变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分5.1 5.1 汇编语言的基本概念汇编语言的基本概念1 1机器语言机器语言(Machine Language)(Machine Language)2 2汇编语言汇编语言(Assembly
3、 Language)(Assembly Language) 比较几个重要的概念比较几个重要的概念: : 1). 1).汇编语言程序汇编语言程序( (源程序源程序):):用汇编语言编写的源程序用汇编语言编写的源程序. . 2). 2).汇编程序汇编程序: :将汇编语言程序将汇编语言程序( (源程序源程序) )翻译成目标程序翻译成目标程序的程序的程序, ,是一种工具软件是一种工具软件, ,如如MASM.EXEMASM.EXE等等. .有基本汇编有基本汇编( (或小汇或小汇编编ASM)ASM)和宏汇编和宏汇编(MASM)(MASM)之分。之分。 3).3).汇编汇编: :利用汇编程序利用汇编程序(
4、(如如MASM.EXEMASM.EXE等等) )将汇编语言程序将汇编语言程序( (源程序源程序) )翻译成目标程序的过程翻译成目标程序的过程. .3. 3. 高级语言高级语言(High Level Language)(High Level Language)用汇编语言编写的源程序汇编程序目标程序用高级语言编写的源程序编译或解释程序目标程序变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分汇编语言和高级语言(1)l汇编语言与处理器密切相关l高级语言与具体计算机无关汇编语言:汇编语言:高级语言:高级语言: 汇编语
5、言和高级语言(1)变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分汇编语言和高级语言(2)l汇编语言功能有限、涉及硬件细节l高级语言提供了强大的功能,不必关心琐碎问题汇编语言:汇编语言:高级语言:高级语言: 汇编语言和高级语言(2)变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分汇编语言和高级语言(3)l汇编语言本质上就是机器语言l高级语言不针对具体计算机系统汇编语言:汇编语言: 高级语言:高级语言:汇编语言和高级语言(
6、3)变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分汇编语言和高级语言(4)汇编语言的优点:汇编语言的缺点:汇编语言:汇编语言:?高级语言:高级语言:?汇编语言和高级语言(4)变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分汇编语言和高级语言(5)l汇编语言的优点使得它在程序设计中占有重要的位置,是不可被取代的l汇编语言的缺点使得人们主要采用高级语言进行程序开发工作l有时需要采用高级语言和汇编语言混合编程的方法,互相取长
7、补短,更好地解决实际问题汇编语言和高级语言(5)变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分汇编语言的应用场合l程序要具有较快的执行时间,或者只能占用较小的存储容量。l程序与计算机硬件密切相关,程序要直接、有效地控制硬件。l大型软件需要提高性能、优化处理的部分。l没有合适的高级语言、或只能采用汇编语言的时候。l分析具体系统尤其是该系统的低层软件、加密解密软件、分析和防治计算机病毒等等。汇编语言的应用场合变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是
8、电力系统接线组成中一个重要组成部分硬指令和伪指令使CPU产生动作、并在程序执行时才处理的语句。(Directive)不产生CPU动作、在程序执行前由汇编程序处理的说明性语句,例如,定义数据、分配存储区、定义段及定义过程等等。伪指令与具体的处理器类型无关,但与汇编程序的版本有关 本课程采用微软宏汇编程序本课程采用微软宏汇编程序 MASM 6.11变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分3.1.2 汇编语言的程序格式完整的汇编语言源程序由段组成。完整的汇编语言源程序由段组成。一个汇编语言源程序可以包含若
9、干个代码段、数一个汇编语言源程序可以包含若干个代码段、数据段、附加段或堆栈段,段与段之间的顺序可随据段、附加段或堆栈段,段与段之间的顺序可随意排列。意排列。需独立运行的程序必须包含一个代码段,并指示需独立运行的程序必须包含一个代码段,并指示程序执行的起始点,一个程序只有一个起始点。程序执行的起始点,一个程序只有一个起始点。所有的可执行性语句必须位于某一个代码段内,所有的可执行性语句必须位于某一个代码段内,说明性语句可根据需要位于任一段内。说明性语句可根据需要位于任一段内。通常,程序还需要一个堆栈段。通常,程序还需要一个堆栈段。5.1.1 5.1.1 汇编语言的程序格式汇编语言的程序格式变电站电
10、气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分汇编语言源程序源程序分别用两种格式书写。 第一种格式从MASM 5.0开始支持 第二种格式MASM 5.0以前就具有Hello, Everybody !程序功能程序功能变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分;lt301a.asm(文件名).model small;定义程序的存储模式.stack;定义堆栈段.data;定义数据段stringdb Hello, Everybo
11、dy !,0dh,0ah,$;在数据段定义要显示的字符串.code;定义代码段.startup;程序起始点,建立DS、SSmov dx,offset string;指定字符串mov ah,9int 21h;利用功能调用显示信息.exit 0;程序结束点,返回DOSend;汇编结束例:简化段定义格式例:简化段定义格式变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分;SampleA.ASM.model small.stack.data.;在数据段定义数据.code.startup;(注1).;在代码段填入指令序
12、列.exit 0;(注2).;子程序代码end;(注3)简化段定义格式简化段定义格式 MASM 6.x支持变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分;SampleC.ASM.model small.stack.data.;在数据段定义数据.codestart:mov ax,datamov ds,ax.;在代码段填入指令序列mov ax,4c00hint 21h.;子程序代码end start简化段定义格式简化段定义格式 MASM 5.x及以上支持变电站电气主接线是指变电站的变压器、输电线路怎样与电力系
13、统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分;lt301b.asm(文件名)stacksegment stack;定义堆栈段dw 512 dup(?);堆栈段有512字(1024字节)空间stackends ;堆栈段结束data segment;定义数据段stringdb Hello, Everybody !,0dh,0ah,$data endscode segment code;定义代码段assume cs:code,ds:data,ss:stackstart:mov ax,data;建立DS段地址mov ds,ax例:完整段定义格式例:完整段定义格式变电
14、站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分mov dx,offset stringmov ah,9int 21hmov ax,4c00hint 21h;利用功能调用返回DOScode ends ;代码段结束end start;汇编结束,同时指明程序起始点例:完整段定义格式例:完整段定义格式变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分5.1.1 汇编语言源程序的格式汇编语言源程序的格式 例例5.1 要求将两个要求将两
15、个5字节十六进制数相加,可以编字节十六进制数相加,可以编写出以下汇编语言源程序。写出以下汇编语言源程序。 3B74AC60F8H+20D59E36C1H=?变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分START:MOV AX,(SEG) DATAMOV DS,AX ;初始化;初始化DS MOV CX,5 ;循环次数送;循环次数送CXMOV SI,0 ;置;置SI初值为初值为0 CLC ;清;清CF标志标志LOOPER:MOV AL,(OFFSET) DATA2SI ;取一个字节加数;取一个字节加数ADC
16、 (OFFSET) DATA1SI,AL ;与被加数相加;与被加数相加 INC SI ;SI加加1 DEC CX ;CX减减1JNZ LOOPER ;若不等于;若不等于0,转,转LOOPERMOV AH,4CH INT 21H;返回;返回DOS CODE ENDS ;代码段结束;代码段结束 END START ;源程序结束;源程序结束 DATASEGMENT;定义数据段;定义数据段 DATA1 DB 0F8H,60H,0ACH,74H,3BH;被加数;被加数 DATA2 DB 0C1H,36H,9EH,0D5H,20H ;加数;加数 DATAENDS ;数据段结束;数据段结束 CODE SEG
17、MENT ;定义代码段;定义代码段ASSUME CS:CODE,DS:DATA 汇编语言源程序的格式与伪指令汇编语言源程序的格式与伪指令变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分-u0B8B:0000 B88A0B MOV AX,0B8A0B8B:0003 8ED8 MOV DS,AX0B8B:0005 B90500 MOV CX,00050B8B:0008 BE0000 MOV SI,00000B8B:000B F8 CLC0B8B:000C 8A840500 MOV AL,SI+00050B8B:
18、0010 10840000 ADC SI+0000,AL0B8B:0014 46 INC SI0B8B:0015 49 DEC CX0B8B:0016 75F4 JNZ 000C0B8B:0018 B44C MOV AH,4C0B8B:001A CD21 INT 21-d 0b8a:00000B8A:0000 F8 60 AC 74 3B C1 36 9E-D5 20 00 00 00 00 00 00汇编语言源程序的格式与伪指令汇编语言源程序的格式与伪指令变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分1
19、.1.分段结构分段结构 汇编语言源程序的结构是分段结构形式,一个汇编语言源汇编语言源程序的结构是分段结构形式,一个汇编语言源程序由若干段程序由若干段(SEGMENT)组成,每个段以组成,每个段以SEGMENT语句开始,语句开始,以以ENDS语句结束。整个源程序的结尾是语句结束。整个源程序的结尾是END语句。语句。 这里所说的汇编语言源程序中的段与前面讨论的这里所说的汇编语言源程序中的段与前面讨论的CPU管理管理的存储器的段,既有的存储器的段,既有联系联系,又在概念上有所,又在概念上有所区别区别: 1、CPU对存储器是分段管理的,它有四个段寄存器对存储器是分段管理的,它有四个段寄存器(CS,ES
20、,SS和和DS) (各一个)。(各一个)。 2、在汇编语言程序中也要求分段组织指令、数据和堆栈,、在汇编语言程序中也要求分段组织指令、数据和堆栈,以便将源程序汇编成为目标程序后,可以分别装入存储器的相以便将源程序汇编成为目标程序后,可以分别装入存储器的相应段中。应段中。 3、而在汇编语言源程序中,设置段的自由度比较大。例如,、而在汇编语言源程序中,设置段的自由度比较大。例如,一个源程序中可以有多个数据段或多个代码段等等一个源程序中可以有多个数据段或多个代码段等等,但至少有一但至少有一个代码段个代码段。变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的
21、主接线是电力系统接线组成中一个重要组成部分2. 汇编语言语句的类型和格式汇编语言语句的类型和格式 1)语句的类型语句的类型 汇编语言源程序中的语句可以分为三种类型:指令语句、伪汇编语言源程序中的语句可以分为三种类型:指令语句、伪指令语句和宏指令语句。指令语句和宏指令语句。 (1) 指令语句指令语句:它是能产生目标代码,它是能产生目标代码,CPU 可以执行的能完可以执行的能完成特定功能的语句。成特定功能的语句。 (2) 伪指令语句伪指令语句:它是一种不产生目标代码的语句,它仅仅它是一种不产生目标代码的语句,它仅仅在汇编过程中告诉汇编程序应如何汇编。在汇编过程中告诉汇编程序应如何汇编。例如,告诉汇
22、编程序已例如,告诉汇编程序已写出的汇编语言源程序有几个段,段的名字是什么;定义变量,写出的汇编语言源程序有几个段,段的名字是什么;定义变量,定义过程,给变量分配存储单元,给数字或表达式命名等。显然,定义过程,给变量分配存储单元,给数字或表达式命名等。显然,伪指令语句是汇编程序在汇编时使用的。伪指令语句是汇编程序在汇编时使用的。 (3)宏指令语句宏指令语句:它是一种用户利用:它是一种用户利用宏指令语句自己定义的宏指令语句自己定义的语句。语句。变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分 2) 语句的格式
23、指令语句与伪指令语句的格式是类似的。一般情况下,汇编语指令语句与伪指令语句的格式是类似的。一般情况下,汇编语言的语句可以由部分构成:言的语句可以由部分构成: 名字名字 助记符助记符 操作数操作数 ;注释;注释其中带方括号的部分表示任选项,可以有,也可以没有。例其中带方括号的部分表示任选项,可以有,也可以没有。例5.1中有如下语句:中有如下语句: LOOPER: MOV AL,DATA2SI; 取一个字节加数取一个字节加数 DATA1 DB 0F8H,60H,0ACH,74H,3BH;被加数;被加数 变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主
24、接线是电力系统接线组成中一个重要组成部分 1) 1) 名字名字l 在指令语句中,这个名字是一个标号在指令语句中,这个名字是一个标号。标号后面通常有一个。标号后面通常有一个冒号。冒号。 标号有三种属性:段、偏移量和类型(标号有三种属性:段、偏移量和类型(NEAR和和FAR)。)。l 伪指令语句中伪指令语句中的名字可以是变量名、段名、过程名。伪指令的名字可以是变量名、段名、过程名。伪指令语句的名字后面通常不跟冒号,这是它和标号的一个明显区别。语句的名字后面通常不跟冒号,这是它和标号的一个明显区别。 变量也有三种属性:段、偏移量和类型(变量也有三种属性:段、偏移量和类型(BYTE、WORD、DWOR
25、D、QWORD、TBYTE)。)。 注:注:段名时默认的是段属性;变量名是段名时默认的是段属性;变量名是默认的是偏移量的属性,默认的是偏移量的属性,见例见例5.15.1。 变电站电气主接线是指变电站的变压器、输电线路怎样与电力系统相连接,从而完成输配电任务。变电站的主接线是电力系统接线组成中一个重要组成部分 2) 助记符助记符 汇编语言语句中的第二个组成部分是助记符汇编语言语句中的第二个组成部分是助记符(Memonic)。 在指令语句中在指令语句中的第二部分是的第二部分是CPU指令系统中指令的助记符,指令系统中指令的助记符,如如MOV、ADC等。等。 在伪指令语句中在伪指令语句中的第二部分是伪
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 汇编语言 ppt 课件
限制150内