汇编教学的思考和实践

汇编教学的思考和实践

ID:36268010

大小:344.31 KB

页数:33页

时间:2019-05-07

汇编教学的思考和实践_第1页
汇编教学的思考和实践_第2页
汇编教学的思考和实践_第3页
汇编教学的思考和实践_第4页
汇编教学的思考和实践_第5页
资源描述:

《汇编教学的思考和实践》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、《汇编语言程序设计》教学的思考和实践苏州大学计算机科学与技术学院杨季文2013.05目录教学指导思想教学内容安排教学环境使用1、教学指导思想教学目标上承高级语言,下启机器系统。学习汇编语言目的不再是熟练运用汇编语言,而是比较深入理解高级语言的实现,更好地理解计算机的工作原理,全面提高程序设计开发能力。知其然,知其所以然。1、教学指导思想教学内容汇编语言程序设计的一般方法基于Intel80x86系列CPU的32位编程处理器的功能及其运用基本功能存储管理中断支持输入输出1、教学指导思想教学方法依托高级语言,讲解低级语言。1、教学指导思想

2、教学方

3、法inttest11(void){intsum,i;sum=0;for(i=1;i<=10;i+=1)sum+=i*i;returnsum;}XOREAX,EAXMOVECX,1LAB1:MOVEDX,ECXIMULEDX,ECXADDEAX,EDXINCECXCMPECX,10JLELAB1RET高级语言和低级语言的对照(变量和寄存器)1、教学指导思想

4、教学方法intx=1;inty=2;voidtest12(void){y=x*x+3;return;}MOVEAX,?x@@3HAMOVECX,EAXIMULECX,EAXADDECX,3

5、MOV?y@@3HA,ECXRET高级语言和低级语言的对照(变量和存储单元)1、教学指导思想教学方法依托高级语言,讲解低级语言。教学内容:语言语法;程序结构;指示命令;教学素材。教学环境:教学演示;程序调试。2、教学内容安排主要教学内容重点难点处理教学理念贯彻2、教学内容安排主要教学内容第1章引言第2章80x86处理器基本功能第3章程序设计初步第4章字符串操作和位操作第5章VC目标代码阅读理解第6章汇编语言第7章高级汇编语言技术第8章输入输出和中断第9章程序的优化(*)第10章80x86保护方式程序设计(*)2、教学内容安排重点难点处理第1

6、章引言第2章80x86处理器基本功能第3章程序设计初步第4章字符串操作和位操作第5章VC目标代码阅读理解第6章汇编语言第7章高级汇编语言技术第8章输入输出和中断第9章程序的优化(*)第10章80x86保护方式程序设计(*)2、教学内容安排重点难点处理第1章引言第2章80x86处理器基本功能(存储器分段、存储器寻址方式)第3章程序设计初步(子程序设计)第4章字符串操作和位操作第5章VC目标代码阅读理解(堆栈、参数传递、优化)第6章汇编语言(段定义)第7章高级汇编语言技术第8章输入输出和中断第9章程序的优化(*)第10章80x86保护方式程序设

7、计(*)2、教学内容安排重点难点处理由浅入深加强演示加强实践结合应用:生动、兴趣固定陈设:简化依托高级语言:比较、借鉴2、教学内容安排通过高级语言源程序的目标代码来说明LEA指令的妙用。设有如下所示的C++语言编写的函数:__fastcalltest22(intx,inty)//由寄存器传参数{return(2*x+5*y+100);}利用VC6编译器,在优化条件为“最快速度”的情况下,编译上述程序后,得到如下所示的目标代码,采用汇编格式指令的形式表示:LEAEAX,DWORDPTR[EDX+EDX*4+100];DWORDPTR表示存储单

8、元是双字LEAEAX,DWORDPTR[EAX+ECX*2]RET;表示返回到调用者,这里代表test22结束返回取有效地址指令的应用2、教学内容安排设有如下所示的C++语言编写的函数:__fastcalltest24(intx){if(x>='A'&&x<='Z')x=x+('a'-'A');returnx;}MOVEAX,ECX;参数保存到EAXCMPEAX,65;与'A'比较JLSHORTLAB528;小于,则转移CMPEAX,90;与'Z'比较JGSHORTLAB528;大于,则转移ADDEAX,32;加上大小写字母ASCII码之间

9、的差LAB528:RET数值大小比较2、教学内容安排讲解循环例:设有如下所示的C++语言编写的函数,这个函数的功能是计算1到n的和。为了较好地说明有关指令的应用,所以采用了一个循环,并安排了两个局部变量。__fastcalltest25(intn){intsum,i;sum=0;for(i=1;i<=n;i++)sum+=i;returnsum;}2、教学内容安排例:采用早先的BorlandC++编译器,在优化条件为“最快速度”的情况下,得到如下所示16位的目标代码。其中,符号“SHORT”表示转移目标就在附近,相对转移时机器码中只要用一个

10、字节表示差值。MOVCX,AX;把存放在AX中的参数n存到CX中XORBX,BX;使代表变量sum的BX为0(sum=0;)MOVAX,1;使代表变量i的AX为1(i=1;)JM

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

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

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