资源描述
,单击此处编辑母版文本样式,第二层,第三层,第四层,第五层,单击此处编辑母版标题样式,*,*,绪论,主讲人,邱德慧,Assembly Language,Programming,汇编语言程序设计,EAX,CS,80 x86,CPU,课程介绍,专业基础课、必修课,计算机组成原理的一个部分,软件开发的一个组成部分,一种低级语言的程序设计,高级语言程序设计的扩展,相关课程,先修课,高级语言程序设计,计算机基础,后续课,计算机组成原理,微机原理及接口技术,单片机原理与应用,什么是汇编语言,(,1,),为什么会产生汇编语言?,早期的程序设计均使用机器语言。程序员们将用,0,、,1,数字编成的程序代码打在纸带或卡片上,再将程序通过纸带机或卡片机输入计算机。,但机器语言如此难于辨别和记忆,于是汇编语言产生了。,计算机语言发展简史,机器语言,汇编语言,高级语言,FORTRAN,BASIC,COBOL,PASCAL,C/C+,JAVA,.,什么是汇编语言,(,2,),汇编语言是一种面向机器的低级程序设计语言,汇编语言以助记符形式表示每一条计算机指令,助记符(,mnemonic,),是便于人们记忆、并能描述指令功能和指令操作数的符号,助记符一般就是表明指令功能的英语单词或其缩写,什么是汇编语言,(,3,),汇编语言的主要特点:,汇编语言程序与处理器指令系统密切相关,程序员可直接、有效地控制系统硬件,形成的可执行文件运行速度快、占用主存容量少,汇编语言和高级语言,(,1,),汇编语言与处理器密切相关,汇编语言程序的通用性、可移植性较差,高级语言与具体计算机无关,高级语言程序可以在多种计算机上编译后执行,汇编语言:,高级语言:,汇编语言和高级语言,(,2,),汇编语言功能有限、涉及硬件细节,编写程序比较繁琐,调试起来也比较困难,高级语言提供了强大的功能,不必关心琐碎问题,类似自然语言的语法,易于掌握和应用,汇编语言:,高级语言:,汇编语言和高级语言,(,3,),汇编语言本质上就是机器语言,可以直接、有效地控制计算机硬件,易于产生速度快、容量小的高效率目标程序,高级语言不针对具体计算机系统,不易直接控制计算机的各种操作,目标程序比较庞大、运行速度较慢,汇编语言:,高级语言:,汇编语言和高级语言,(,4,),汇编语言的优点:,直接控制计算机硬件部件,可以编写在“时间”和“空间”两方面最有效的程序,汇编语言的缺点:,与处理器密切有关,需要熟悉计算机硬件系统、考虑许多细节,编写繁琐,调试、维护、交流和移植困难,汇编语言和高级语言,(,5,),汇编语言的优点使得它在程序设计中占有重要的位置,是不可被取代的,汇编语言的缺点使得人们主要采用高级语言进行程序开发工作,有时需要采用高级语言和汇编语言混合编程的方法,互相取长补短,更好地解决实际问题,混合编程,取长补短,汇编语言的应用场合,程序要具有较快的执行时间,或者只能占用较小的存储容量,例如,:,操作系统的核心程序段,实时控制系统的软件,智能仪器仪表的控制程序;,程序与计算机硬件密切相关,程序要直接、有效地控制硬件,例如,:I/O,接口电路的初始化程序段,外部设备的低层驱动程序;,大型软件需要提高性能、优化处理的部分,例如,:,计算机系统频繁调用的子程序、动态链接库;,没有合适的高级语言、或只能采用汇编语言的时候,例如,:,开发最新的处理器程序时,暂时没有支持新指令的编译程序;,分析具体系统尤其是该系统的低层软件、加密解密软件、分析和防治计算机病毒等,下面是两个小例子,例,1,是用高级语言,VC+,编写的,例,2,是用汇编语言编写的。它们完成相同的功能,即把,a,、,b,的内容相加赋给,c,,,并在屏幕上显示出来,。,#include,stdafx.h,#include,stdio.h,int,main(int,argc,char*,argv,),int,a,b,c;,a=1;,b=2;,c=a+b;,printf(“c,=%dn,c);,return 0;,例,1,编译后的目标文件达到,3.59KB,data segment,a db?,b db?,c db?,string db c=$,data ends,code segment,main proc far,assume,cs:code,ds:data,es:data,start:,push,ds,sub ax,ax,push ax,mov,ax,data,mov,ds,ax,mov,es,ax,mov,a,1,mov,b,2,mov,al,a,add al,b,mov,c,al,lea,dx,string,mov,ah,09,int,21h,add c,30h,mov,dl,c,mov,ah,2,int,21h,mov,dl,0ah,int,21h,mov,dl,0dh,int,21h,ret,main,endp,code ends,end start,例,2,汇编后的目标文件只有,208,字节,参考书:,32,位汇编语言程序设计,穆玲玲,钱晓捷主编 电子工业出版社,Windows,环境下,32,位汇编语言程序设计,罗云彬 主编 电子工业出版社,学习方法很重要,课堂,:听讲与理解、适当笔记,课后,:认真读书、完成作业,实验,:充分上机、多编程练习,考核要求,考试成绩(课堂教学内容),70,上机成绩(出勤及编程情况),20,平时成绩(作业等学习情况),10,请提宝贵意见和建议,!,Feel free to express yourself !,答疑时间:,http:/,Password:5555,Email:,qiudehui126.,com,
展开阅读全文