汇编语言程序设计(自学)课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《汇编语言程序设计(自学)课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编语言 程序设计 自学 课件
- 资源描述:
-
1、汇编语言程序设计(自学)一、设置自学型课程的目的一、设置自学型课程的目的二、自学型课程的教学形式及教师的作用二、自学型课程的教学形式及教师的作用三、本课程教学目标及学习方法三、本课程教学目标及学习方法四、本课程教学内容及要求四、本课程教学内容及要求 五、课程考核五、课程考核方法一、设置自学型课程的目的一、设置自学型课程的目的 培养独立学习新知识、新技能,发现问题、分析问题、解决问题的自主学习能力,适应科学技术和社会发展的要求。二、自学型课程的教学形式及教师的作用二、自学型课程的教学形式及教师的作用不进行课堂讲授,对自学课程提出学习要求,列出教材和参考书目,布置和批改课程作业,进行辅导、答疑、质
2、疑,组织学生讨论,分析总结和组织课程考核等工作。本课程讨论采用网上(教育在线)和指定教室两种方式进行答疑辅导,通过本课程的学习,掌握汇编语言指令系统的功通过本课程的学习,掌握汇编语言指令系统的功能、格式及寻址方式等基本概念的基础上,通过自能、格式及寻址方式等基本概念的基础上,通过自修及老师的指导,学习利用汇编语言进行程序设计,修及老师的指导,学习利用汇编语言进行程序设计,为后续的微型计算机接口技术等相关课程的学习提为后续的微型计算机接口技术等相关课程的学习提供扎实的基础供扎实的基础 。通过仔细阅读教材及参考书,掌握汇编语言进通过仔细阅读教材及参考书,掌握汇编语言进行程序设计的方法,同时采用上机
3、编程的形式对所行程序设计的方法,同时采用上机编程的形式对所学内容进行练习,即采用理论与实践相结合的方法学内容进行练习,即采用理论与实践相结合的方法学习。学习。三、本课程教学目标及学习方法三、本课程教学目标及学习方法四、本课程教学内容及要求四、本课程教学内容及要求 n1、汇编语言程序的开发过程n2、顺序程序设计n3、分支程序设计n4、循环程序设计n5、子程序设计n6、系统功能子程序调用n7、汇编语言程序的调试1、汇编语言程序的开发过程、汇编语言程序的开发过程程序设计步骤1、分析问题,确定算法。2、选择程序设计语言。3、编制程序流程。4、正确、合理使用存储器和寄存器。5、编写程序。6、调试程序。2
4、、顺序程序设计要求:掌握一个完整的汇编语言程序的结构框架。指令1指令2指令n指令n+1 :例 9-1设在数据段中定义有三个变量X,Y,Z,请利用算术移位指令编写程序,计算出下式的值:Z=10*(X+Y)源程序源程序:;设置数据段设置数据段DATA SEGMENTDATA SEGMENT X DW 20H ;X DW 20H ;变量变量X X Y DW 12H ;Y DW 12H ;变量变量Y Y Z DW?;Z DW?;变量变量Z ZDATA ENDSDATA ENDS;设置堆栈段设置堆栈段STACK1 SEGMENT PARA STACKSTACK1 SEGMENT PARA STACK D
5、B 10H DUP(0)DB 10H DUP(0)STACK1 ENDS STACK1 ENDS;设置代码段设置代码段CODE SEGMENTCODE SEGMENTASSUME CS:CODE,DS:DATAASSUME CS:CODE,DS:DATASTART:START:MOV AX,DATA MOV AX,DATA MOV DS,AX MOV DS,AX MOV AX,X MOV AX,X ADD AX,Y ADD AX,Y SAL AX,1 SAL AX,1 MOV BX,AX MOV BX,AX MOV CL,2 MOV CL,2 SAL AX,CL SAL AX,CL ADD A
6、X,BX ADD AX,BX MOV Z,AX MOV Z,AX MOV AH,4CH MOV AH,4CH INT 21H INT 21HCODE ENDSCODE ENDS END END STARTSTART3、分支程序设计条件满足?语句1语句2YN条件满足?语句YN条件满足?u分支程序的基本概念。u利用比较/测试分支结构实现程序设计。u利用分支表结构实现程序设计。重点重点:掌握分支程序的设计方法。难点难点:利用比较/测试方法实现分支程序设计、利用分支表结构实现分支程序设计。3、分支程序设计 学习程序设计过程中需要注意掌握转移指令的运学习程序设计过程中需要注意掌握转移指令的运用。用。分支
7、程序主要包括:分支程序主要包括:u两分支程序设计两分支程序设计u多分支程序设计多分支程序设计n条件转移法条件转移法n地址表法地址表法n跳转表法跳转表法4、循环程序设计u循环程序的基本结构循环程序的基本结构u循环程序的控制方法循环程序的控制方法u多重循环程序设计多重循环程序设计重点:重点:掌握循环程序的设计方法。掌握循环程序的设计方法。难点:难点:循环程序的控制方法:循环程序的控制方法:计数控制法和条件控制法;计数控制法和条件控制法;多重循环程序设计。多重循环程序设计。循环程序结构初始化部分工作部分修改部分循环结束结束处理部分YN循环结束工作部分修改部分结束处理部分初始化部分初始化部分Y控制部分
8、控制部分N循环程序结构1、初始化部分n设置地址指针、计数器初值2、工作部分3、修改部分4、控制部分n用计数控制循环n用条件控制循环5、结束处理部分循环控制方法1、用计数控制循环n使用计数器,达到计数器预定值,循环结束。要求循环次数已知。n计数器可以递增、递减n可以选用寄存器、也可用存储单元2、用条件控制循环n找出一个终止循环的条件,每循环一次,对条件进行一次检测。满足终止循环的条件,退出循环,否则继续。n通常选用条件转移指令来控制循环是否结束。n分清内外循环的任务和要求,划分内外循环中有规律变化的参数:地址指针、计数器n确定内外循环的控制方法和具体实施。3、多重循环程序设计循环控制方法5、子程
9、序设计u子程序设计方法子程序设计方法u子程序的参数传递子程序的参数传递u子程序的嵌套与递归子程序的嵌套与递归重点:重点:掌握子程序的设计方法;掌握子程序的设计方法;主程序现场的保护与恢复。主程序现场的保护与恢复。难点:难点:主程序和子程序之间的参数传递方法:主程序和子程序之间的参数传递方法:寄存器传递参数法、存储器传递参数法、地址寄存器传递参数法、存储器传递参数法、地址表传递参数法和堆栈传递参数法;表传递参数法和堆栈传递参数法;子程序的嵌套与递归。子程序的嵌套与递归。程序基本结构n过程n主调过程(主程序)n被调过程(子程序)查找程序字符输入串输入查找结果输出5、子程序设计n过程定义n过程调用n
10、过程返回需要掌握子程序设计方法1 1、适度地划分并确定子程序功能、适度地划分并确定子程序功能n具有独立功能的程序作为一个模块具有独立功能的程序作为一个模块n多次出现的程序段独立出来多次出现的程序段独立出来2 2、选择适当的参量传递途径、选择适当的参量传递途径寄存器传递、参数表传递、地址表传递、堆栈传递寄存器传递、参数表传递、地址表传递、堆栈传递3 3、信息的保存、信息的保存n在主程序中保存信息在主程序中保存信息n在子程序中保存信息在子程序中保存信息4 4、编写子程序的文字说明、编写子程序的文字说明6、系统功能调用系统功能调用由OS提供的一组实现特殊功能的子程序供程序员在程序中调用,以减轻编程工
11、作量。系统功能调用有两种,一种称为DOS功能调用,另一种称为BIOS功能调用。应用程序外设硬件接口BIOSDOS系统功能调用采用软中断指令 INT n (其中:n为中断类型码)(1)PUSHF,TF、IF清0,CS、IP入栈 (2)按中断类型码n,从中断向量表对应位置取出将要调用的功能子程序的入口地址CS,IP (3)功能子程序返回:IRETDOS功能调用调用方法:p 入口参数p 子程序编号送AHp INT 21HDOS功能调用基本I/O功能调用 功能 入口参数 出口参数 说明 键盘输入 AH=1AL=字符ASCII码字符显示控制台输入 AH=8同1号无显示显示输出 AH=2 DL=字符ASC
12、II码打印输出 AH=5 DL=字符ASCII码直接控制台 AH=6 ZF=0,AL=字符ASCII码输入/输出 DL=0FFH/字符码 ZF=1无键按下字符串输出 AH=9字符串须以$结束 DS:DX=串首址字符串输入 AH=0AH首先定义缓冲区 (1)从键盘输入一个字符(功能号功能号=1=1)MOV AH,MOV AH,1 1 ;等待按键 INT 21H INT 21H ;字符回显 AL (2)从键盘输入一个字符,无显示(功能号功能号=8=8)MOV AH,MOV AH,8 8 INT 21H INT 21H AL DOS功能调用 例:程序中有时需要用户对提示做出应答 GET_KEY:MO
13、V AH,1;等待键入字符 INT 21H;结果在AL中 CMP AL,Y;是Y?JZ YES ;是,转YES CMP AL,N;是N?JZ NO ;是,转NO JMP GET_KEY;否则继续等待输入 YES:NO:(3)在显示器上显示一个字符(功能号=2)MOV DL,MOV AH,2 INT 21H 例:在显示器上显示一个字符A MOV DL,A ;或MOV DL,41H MOV AH,2 INT 21HDOS功能调用(4)MOV DL,0FFH;键盘输入 MOV AH,6 INT 21H MOV DL,24H;屏幕输出 MOV AH,6 INT 21HDOS功能调用(5)显示字符串(功
展开阅读全文