汇编语言课程设计
- 格式:doc
- 大小:52.50 KB
- 文档页数:11
基于汇编语言的课程设计一、课程目标知识目标:1. 掌握汇编语言的基本概念,包括寄存器、指令、寻址方式等;2. 了解汇编语言的编程流程,能够阅读和分析简单的汇编程序;3. 了解汇编语言与硬件的关系,理解汇编指令对硬件操作的影响。
技能目标:1. 能够使用汇编语言编写简单的程序,实现基本的输入输出、运算和控制流程;2. 学会运用汇编语言进行程序调试,查找并修复程序中的错误;3. 能够运用汇编语言解决实际问题,如编写系统调用、中断处理等。
情感态度价值观目标:1. 培养学生对计算机底层原理的兴趣,激发他们探究硬件与软件关系的热情;2. 培养学生的编程思维,提高他们分析问题、解决问题的能力;3. 增强学生的团队合作意识,培养他们在编程过程中相互帮助、共同进步的精神。
课程性质:本课程为计算机科学与技术专业选修课,旨在帮助学生深入理解计算机硬件与软件的底层原理,提高编程技能。
学生特点:学生已具备一定的编程基础,熟悉高级编程语言,但对汇编语言了解较少。
教学要求:结合学生特点,课程设计注重理论与实践相结合,以实例为主线,引导学生掌握汇编语言的编程方法和技巧。
通过课程学习,使学生能够独立编写简单的汇编程序,并具备进一步深入学习汇编语言的能力。
教学过程中注重激发学生的学习兴趣,培养他们的编程素养和团队协作能力。
最终,将课程目标分解为具体的学习成果,以便于教学设计和评估。
二、教学内容1. 汇编语言基础知识:寄存器、指令、寻址方式、汇编语言编程环境搭建;教材章节:第一章至第二章2. 汇编语言编程流程:汇编程序的编写、汇编、链接和调试;教材章节:第三章3. 汇编语言基本指令:数据传输指令、算术运算指令、逻辑运算指令、控制流指令;教材章节:第四章4. 汇编语言程序设计:顺序结构、分支结构、循环结构、子程序设计;教材章节:第五章至第六章5. 汇编语言与硬件操作:中断处理、系统调用、I/O操作;教材章节:第七章6. 汇编语言综合实例:简单操作系统、驱动程序编写;教材章节:第八章教学内容安排和进度:1. 基础知识部分(2周):讲解寄存器、指令和寻址方式,引导学生搭建汇编语言编程环境;2. 编程流程部分(2周):学习汇编程序的编写、汇编、链接和调试;3. 基本指令部分(3周):深入学习各种汇编指令;4. 程序设计部分(4周):学习汇编语言的程序设计方法;5. 硬件操作部分(3周):了解汇编语言在硬件操作中的应用;6. 综合实例部分(4周):通过实例巩固所学知识。
汇编语言微机课程设计一、课程目标知识目标:1. 掌握汇编语言的基本概念,包括寄存器、指令、地址等;2. 理解并掌握汇编语言编程的基本流程,包括编写、汇编、链接和执行;3. 学习微机硬件基础知识,了解CPU、内存和I/O设备的工作原理;4. 学会使用汇编语言进行简单的程序设计,如顺序结构、分支结构和循环结构。
技能目标:1. 能够熟练使用汇编语言编程环境,进行代码编写、调试和运行;2. 能够运用汇编语言解决实际问题,如编写一个计算器程序;3. 培养学生的逻辑思维能力和编程技能,提高问题解决能力。
情感态度价值观目标:1. 培养学生对计算机硬件和汇编语言的兴趣,激发学习热情;2. 培养学生严谨、细致的学习态度,提高自主学习能力;3. 培养学生的团队合作精神,学会与他人共同解决问题;4. 引导学生认识计算机技术对社会发展的作用,培养社会责任感。
课程性质:本课程为选修课,适用于对计算机硬件和汇编语言感兴趣的学生。
学生特点:学生具备一定的计算机基础知识,具有较强的逻辑思维能力和动手能力。
教学要求:结合学生特点,注重理论与实践相结合,以案例教学为主,培养学生的实际操作能力。
通过课程学习,使学生能够掌握汇编语言编程的基本技能,提高解决问题的能力。
在教学过程中,关注学生的情感态度,激发学习兴趣,培养良好的价值观。
将课程目标分解为具体的学习成果,以便进行教学设计和评估。
二、教学内容1. 汇编语言基础知识- 寄存器与内存:介绍寄存器、内存地址、数据类型等基本概念;- 指令系统:讲解汇编指令的分类、格式及功能;- 汇编过程:介绍汇编、链接、执行的基本流程。
2. 汇编语言编程技巧- 顺序结构:编写简单的顺序结构程序,如数据传送、算术运算等;- 分支结构:学习条件跳转指令,实现分支结构程序;- 循环结构:掌握循环指令,实现循环结构程序。
3. 微机硬件原理- CPU结构与工作原理:介绍CPU的内部结构,执行指令的过程;- 内存与I/O设备:讲解内存管理、I/O设备与CPU的交互。
8086汇编课程设计一、课程目标知识目标:1. 理解8086汇编语言的基本概念,掌握汇编语言的程序结构。
2. 学会使用8086汇编语言进行基本的输入输出操作,理解寄存器、内存的使用方法。
3. 掌握汇编语言中的条件判断、循环等控制语句,并能够运用到实际编程中。
技能目标:1. 能够运用汇编语言编写简单的程序,解决实际问题。
2. 培养学生的逻辑思维能力和编程技能,提高解决复杂问题的能力。
3. 培养学生独立调试汇编程序的能力,学会使用汇编器的常用功能。
情感态度价值观目标:1. 培养学生对计算机硬件及底层编程的兴趣,激发学习热情。
2. 增强学生的团队合作意识,学会在团队中沟通、协作、共同解决问题。
3. 培养学生严谨、细致的学习态度,养成良好的编程习惯。
分析课程性质、学生特点和教学要求,本课程目标旨在使学生在理解汇编语言基本概念的基础上,通过实际编程实践,掌握汇编语言的核心技能,培养具备实际编程能力和逻辑思维能力的高年级学生。
课程目标分解为具体学习成果,便于后续教学设计和评估。
二、教学内容1. 汇编语言基本概念:介绍8086汇编语言的发展历程、特点,理解汇编语言与机器语言的关系,掌握汇编程序的基本结构。
教材章节:第一章 汇编语言概述2. 寄存器与内存操作:讲解8086处理器寄存器、内存地址空间,学会使用寄存器和内存进行数据存储和运算。
教材章节:第二章 寄存器与内存操作3. 汇编指令系统:学习汇编语言的基本指令、数据传输指令、算术运算指令、逻辑运算指令等,并掌握其使用方法。
教材章节:第三章 汇编指令系统4. 程序控制语句:介绍条件判断、循环等控制语句,学会编写具有分支、循环结构的汇编程序。
教材章节:第四章 程序控制语句5. 字符串处理:学习字符串处理指令,掌握字符串输入输出、比较、复制等操作。
教材章节:第五章 字符串处理6. 中断与子程序:讲解中断的概念、中断处理程序,学会编写和调用子程序。
教材章节:第六章 中断与子程序7. 汇编语言编程实践:结合实际案例,进行汇编语言编程实践,培养实际编程能力。
简单汇编语言课程设计一、课程目标知识目标:1. 学生能理解汇编语言的基本概念,掌握汇编语言的语法结构。
2. 学生能描述计算机硬件的基本组成,了解汇编语言与硬件操作的关系。
3. 学生能运用汇编语言编写简单的程序,实现基本的输入输出、运算和逻辑控制。
技能目标:1. 学生能独立完成汇编语言程序的编写、调试和运行。
2. 学生能运用汇编语言解决实际问题,培养编程思维和问题解决能力。
3. 学生能通过查阅资料,了解汇编语言在实际应用中的发展,提高信息素养。
情感态度价值观目标:1. 学生对汇编语言产生兴趣,认识到编程对个人和社会发展的意义。
2. 学生在编程过程中,培养耐心、细致、严谨的学术态度。
3. 学生通过学习汇编语言,增强团队协作意识,提高沟通与表达能力。
课程性质:本课程为信息技术课程,旨在让学生了解计算机底层原理,掌握汇编语言编程技能,培养编程兴趣。
学生特点:本课程针对的是高年级学生,他们已具备一定的计算机操作能力,思维活跃,好奇心强,具备一定的自学能力和团队合作精神。
教学要求:教师应注重理论与实践相结合,引导学生通过实际操作掌握汇编语言编程技能,激发学生的学习兴趣,培养其编程思维和问题解决能力。
同时,关注学生的个体差异,提供有针对性的指导,确保课程目标的实现。
在教学过程中,将目标分解为具体的学习成果,以便于教学设计和评估。
二、教学内容1. 汇编语言概述- 了解汇编语言的发展历程- 掌握汇编语言与高级语言的异同2. 计算机硬件基础- 学习计算机硬件的基本组成- 了解汇编语言与硬件操作的关系3. 汇编语言语法- 掌握汇编语言的指令系统- 学习汇编语言的寄存器、操作数和地址表达式4. 汇编程序结构- 了解汇编程序的组织结构- 学习汇编程序的编写、调试和运行方法5. 基本输入输出操作- 掌握汇编语言实现输入输出的方法- 学习汇编语言与BIOS、中断的关系6. 算术运算与逻辑控制- 学习汇编语言实现基本算术运算和逻辑控制- 掌握相关指令和编程技巧7. 汇编语言编程实例- 分析经典汇编程序案例- 实践编写简单的汇编程序,解决实际问题教学内容安排和进度:第1周:汇编语言概述、计算机硬件基础第2周:汇编语言语法第3周:汇编程序结构第4周:基本输入输出操作第5周:算术运算与逻辑控制第6周:汇编语言编程实例及拓展教材章节关联:本教学内容与教材中“汇编语言程序设计”章节相关,涵盖了汇编语言的语法、编程技巧和实例。
王爽汇编语言课程设计一、课程目标知识目标:1. 理解汇编语言的基本概念,掌握汇编语言的语法和指令系统;2. 学会使用汇编语言进行程序设计和调试;3. 了解计算机硬件与汇编语言的关联,理解汇编语言在计算机运行中的作用。
技能目标:1. 能够运用汇编语言编写简单的程序,实现基本的输入输出、算术运算等功能;2. 学会使用汇编语言进行条件判断和循环控制;3. 掌握汇编语言与高级语言的混合编程方法。
情感态度价值观目标:1. 培养学生对计算机底层原理和汇编语言的兴趣,激发学习热情;2. 培养学生的编程思维和解决问题的能力,提高自信心;3. 强调汇编语言在计算机科学中的重要性,培养学生的专业素养。
课程性质分析:本课程为计算机科学与技术专业的基础课程,旨在帮助学生深入理解计算机硬件与软件的关联,掌握汇编语言的编程技能。
学生特点分析:学生处于大学本科阶段,具备一定的计算机基础知识和编程能力,对汇编语言有一定的好奇心,但可能对底层原理感到困惑。
教学要求:1. 结合实际案例,深入浅出地讲解汇编语言知识;2. 注重实践操作,培养学生的动手能力;3. 突出汇编语言在实际应用中的作用,提高学生的应用意识。
二、教学内容1. 汇编语言基础知识:介绍汇编语言的概念、发展历程、特点及应用场景,讲解汇编语言的语法和指令系统(对应教材第1章)。
- 数据类型与寄存器- 指令格式与寻址方式2. 汇编语言程序设计:讲解汇编语言的编程方法,通过案例分析和实践操作,使学生掌握汇编程序的设计与调试(对应教材第2-4章)。
- 程序结构- 基本指令的使用- 程序流程控制3. 汇编语言与硬件的关系:介绍汇编语言如何与计算机硬件交互,理解汇编语言在计算机运行中的作用(对应教材第5章)。
- 计算机硬件原理- 汇编语言与CPU的关联4. 混合编程:讲解汇编语言与高级语言的混合编程方法,提高学生的编程技能和应用能力(对应教材第6章)。
- 混合编程概念与原理- 混合编程实例分析5. 实践环节:设置多个实践任务,让学生动手编写汇编程序,巩固所学知识,提高实际操作能力(对应教材实践部分)。
汇编语言课课程设计一、教学目标本课程的教学目标是使学生掌握汇编语言的基本语法、指令集、程序设计方法和相关概念,培养学生运用汇编语言进行程序设计的能力。
具体目标如下:1.知识目标:–掌握汇编语言的基本语法和规则。
–熟悉汇编语言的指令集,包括数据传输、算术运算、逻辑运算、控制流等。
–了解汇编语言与硬件的关系,理解程序执行的过程。
2.技能目标:–能够使用汇编语言编写简单的程序,实现数据的输入输出、计算等功能。
–能够阅读和理解汇编语言程序,进行程序调试和优化。
–能够运用汇编语言进行硬件编程和系统开发。
3.情感态度价值观目标:–培养学生对汇编语言编程的兴趣,提高学生对计算机科学的热爱。
–培养学生解决问题的能力,培养学生的创新精神和团队合作意识。
二、教学内容根据教学目标,本课程的教学内容主要包括以下几个方面:1.汇编语言的基本语法和规则,包括数据类型、寄存器、指令格式等。
2.汇编语言的指令集,包括数据传输指令、算术运算指令、逻辑运算指令、控制流指令等。
3.汇编语言与硬件的关系,包括寄存器文件、程序计数器、栈等硬件部件的工作原理。
4.汇编语言程序的设计方法,包括程序的编写、调试和优化。
5.汇编语言在硬件编程和系统开发中的应用。
三、教学方法为了实现教学目标,本课程将采用多种教学方法,包括:1.讲授法:通过教师的讲解,使学生掌握汇编语言的基本概念和语法规则。
2.案例分析法:通过分析典型的汇编语言程序,使学生理解程序的设计方法和编程技巧。
3.实验法:通过上机实验,使学生亲自动手编写和调试汇编语言程序,提高学生的编程能力。
4.讨论法:通过小组讨论,激发学生的思考,培养学生的团队合作意识和创新能力。
四、教学资源为了支持教学内容和教学方法的实施,本课程将准备以下教学资源:1.教材:选用权威、实用的汇编语言教材,作为学生学习的主要参考资料。
2.参考书:提供相关的汇编语言编程书籍,供学生深入学习和参考。
3.多媒体资料:制作课件、教学视频等多媒体资料,丰富教学手段,提高学生的学习兴趣。
汇编语言的课程设计一、教学目标本课程的教学目标是使学生掌握汇编语言的基本概念、语法和程序设计方法,培养学生运用汇编语言进行程序设计的能力。
具体目标如下:1.知识目标:(1)了解汇编语言的基本概念和特点;(2)掌握汇编语言的语法规则,包括数据类型、指令系统、程序结构等;(3)熟悉汇编语言的编程技巧,如寄存器分配、内存管理等;(4)了解汇编语言与机器语言的关系及汇编过程。
2.技能目标:(1)能够使用汇编语言编写简单的程序,如计算器、排序等;(2)能够阅读并理解汇编语言程序;(3)能够对汇编语言程序进行调试和优化。
3.情感态度价值观目标:(1)培养学生对计算机科学的兴趣和热情;(2)培养学生勇于探索、善于合作的科学精神;(3)培养学生严谨治学、追求卓越的学习态度。
二、教学内容本课程的教学内容主要包括以下几个部分:1.汇编语言的基本概念和特点;2.汇编语言的语法规则,包括数据类型、指令系统、程序结构等;3.汇编语言的编程技巧,如寄存器分配、内存管理等;4.汇编语言与机器语言的关系及汇编过程;5.汇编语言程序的设计与调试。
教学大纲安排如下:第1-2课时:汇编语言的基本概念和特点;第3-4课时:汇编语言的语法规则;第5-6课时:汇编语言的编程技巧;第7-8课时:汇编语言与机器语言的关系及汇编过程;第9-10课时:汇编语言程序的设计与调试。
三、教学方法本课程采用多种教学方法,以激发学生的学习兴趣和主动性:1.讲授法:讲解汇编语言的基本概念、语法规则和编程技巧;2.案例分析法:分析典型的汇编语言程序,使学生更好地理解编程思想;3.实验法:让学生动手编写和调试汇编语言程序,提高实际操作能力;4.讨论法:分组讨论问题,培养学生的合作精神和沟通能力。
四、教学资源本课程所需教学资源包括:1.教材:《汇编语言程序设计》;2.参考书:《汇编语言教程》、《汇编语言实践》;3.多媒体资料:课件、教学视频等;4.实验设备:计算机、汇编语言编程环境。
汇编语言 课程设计2一、课程目标知识目标:1. 让学生掌握汇编语言的基本概念,包括寄存器、指令、寻址方式等;2. 培养学生运用汇编语言进行程序设计的能力,能够编写简单的汇编程序;3. 使学生了解汇编语言与硬件的关系,理解计算机的工作原理。
技能目标:1. 培养学生运用汇编语言进行问题分析、程序设计和调试的能力;2. 培养学生熟练使用汇编语言开发工具,如汇编器、链接器等;3. 培养学生具备一定的计算机硬件操作能力,能够进行基本的汇编指令执行过程分析。
情感态度价值观目标:1. 培养学生对计算机科学的兴趣,激发学习汇编语言的积极性;2. 培养学生具备良好的编程习惯,注重程序的可读性和效率;3. 培养学生具备团队协作意识,能够在小组合作中发挥各自优势,共同解决问题。
课程性质分析:本课程为计算机科学与技术专业核心课程,旨在培养学生的计算机底层编程能力,加深对计算机硬件和软件的深入理解。
学生特点分析:学生具备一定的计算机基础和编程能力,但可能对汇编语言较为陌生,需要从基本概念入手,逐步引导学生掌握汇编语言编程技巧。
教学要求:1. 结合实际案例,注重理论与实践相结合,提高学生的实际操作能力;2. 采用任务驱动法,引导学生主动探究,培养学生的自主学习能力;3. 强化实践环节,注重个体差异,提供针对性的辅导和指导。
二、教学内容1. 汇编语言基础知识:- 寄存器概念与分类- 指令系统与指令格式- 常用汇编指令及其功能- 数据表示与寻址方式2. 汇编语言程序设计:- 程序结构及伪指令- 汇编程序编写与调试方法- 简单程序设计实例分析- 子程序设计与调用3. 汇编语言与硬件的关系:- 计算机硬件工作原理概述- 指令执行过程分析- 中断与异常处理- 存储器组织与管理4. 实践环节:- 使用汇编语言开发工具进行程序编写与调试- 常见汇编程序案例分析- 小组项目:设计并实现一个简单的汇编程序教学内容安排与进度:第一周:汇编语言基础知识(1-2章)第二周:汇编语言程序设计(3-4章)第三周:汇编语言与硬件的关系(5-6章)第四周:实践环节(7章)教材章节关联:1. 汇编语言基础知识:对应教材第1-2章内容2. 汇编语言程序设计:对应教材第3-4章内容3. 汇编语言与硬件的关系:对应教材第5-6章内容4. 实践环节:对应教材第7章内容教学内容确保科学性和系统性,结合实际案例,使学生能够循序渐进地掌握汇编语言知识,提高编程能力。
汇编语言课程设计csdn一、课程目标知识目标:1. 学生理解汇编语言的基本概念,掌握汇编语言的语法和指令系统;2. 学生掌握汇编语言编程的基本流程,能够阅读和分析简单的汇编程序;3. 学生了解计算机硬件的基本组成,理解汇编语言与硬件操作的关系。
技能目标:1. 学生能够使用汇编语言编写简单的程序,具备调试和优化汇编程序的能力;2. 学生能够运用汇编语言实现基本的输入输出操作,掌握与高级语言混合编程的方法;3. 学生通过实际操作,提高问题分析、程序设计和调试的能力。
情感态度价值观目标:1. 学生培养对计算机底层原理的兴趣,增强对汇编语言的认同感;2. 学生在编程实践中,体会团队合作的重要性,提高沟通与协作能力;3. 学生认识到汇编语言在计算机科学中的地位和价值,培养对编程的热爱。
课程性质:本课程为计算机科学与技术专业选修课,适用于对计算机底层原理感兴趣的高年级学生。
学生特点:学生具备一定的编程基础,对汇编语言有一定了解,但实践经验不足。
教学要求:注重理论与实践相结合,强调实际操作,提高学生的动手能力。
通过本课程的学习,使学生能够掌握汇编语言的基本知识,具备实际编程能力,并培养良好的编程习惯和团队合作精神。
教学过程中,将目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容本课程教学内容分为五个部分:1. 汇编语言基础知识:包括汇编语言概述、计算机硬件组成、汇编指令系统等,旨在让学生了解汇编语言的基本概念和硬件操作原理。
教学内容:- 汇编语言概述:了解汇编语言的发展历程、特点及与高级语言的差异;- 计算机硬件组成:学习CPU、内存、寄存器等硬件组件的工作原理;- 汇编指令系统:掌握汇编指令的分类、格式及用法。
2. 汇编语言编程:包括汇编语言编程流程、汇编器使用、程序调试等,培养学生编写和调试汇编程序的能力。
教学内容:- 汇编语言编程流程:学习汇编程序的编辑、汇编、链接和执行过程;- 汇编器使用:熟悉汇编器的功能、参数设置和操作方法;- 程序调试:掌握调试工具的使用,学会分析程序运行过程中的错误。
汇编语言第二版课程设计课程背景汇编语言是一门底层编程语言,它直接操作计算机底层硬件。
因此,它对于计算机专业学生是一门非常重要的课程。
在本课程设计中,我们选用《汇编语言》第二版作为教材,通过具体的课程设计来帮助学生更好地掌握汇编语言的基础知识和应用。
课程目标通过本课程设计的学习和实践,学生应该能够:1.掌握汇编语言的基础语法和常用指令;2.熟悉汇编程序的调试和优化过程;3.初步了解CPU的基本工作原理;4.能够实现一些简单的应用程序。
课程内容第一讲:汇编语言基础本讲主要介绍汇编语言的基本语法和常用指令,包括寄存器、内存、运算符、标志寄存器等内容。
通过实例代码的编写和调试,让学生逐步熟悉汇编语言的基本使用方法。
第二讲:条件分支与循环本讲主要介绍条件分支和循环语句的使用方法。
通过实际应用场景的模拟,让学生深入了解条件分支和循环语句的实现原理。
第三讲:子程序本讲主要介绍子程序的概念和使用方法。
通过实例代码的编写和调试,让学生了解如何进行程序模块化设计,提高程序的复用性和可维护性。
第四讲:中断与异常本讲主要介绍中断和异常的概念和使用方法。
通过实例代码的编写和调试,让学生了解中断和异常的实现机制,提高程序的可靠性和稳定性。
课程实验课程实验是本课程的重要组成部分,通过实际操作让学生巩固所学的知识。
本课程设计中,我们安排了三个实验:1.编写一个能够实现加、减、乘、除四种基本运算的计算器程序;2.编写一个能够将任意大写字母转换成小写字母的程序;3.编写一个能够实现简单计算器、机器翻译和音乐播放器的操作系统。
考核方式本课程以实验报告和期末考试相结合的方式进行考核。
实验报告占总成绩的70%。
期末考试占总成绩的30%。
实验报告和期末考试的具体要求将在课程教学过程中发布。
总结通过本课程的学习和实践,学生能够掌握汇编语言的基础知识和应用方法,提高编程能力和代码质量。
本课程的设计旨在让学生逐步实现一个简单的操作系统,帮助他们更好地理解计算机底层的工作原理和实现过程。
课程设计报告课程名称:汇编语言程序设计课题名称:系统时间显示姓名:阚鹏班级:信息与计算科学082班指导老师:邢远秀老师报告日期:2010年第一章前言1.1设计背景课程设计的主要目的是提高实践能力,包括对硬件的理解分析能力和汇编语言的编程能力。
与其他课程不同的是,本课程对硬件有较高的依赖性,因此课程设计的灵活性受到了一定的限制,最好有相应的实验平台支持(尤其是硬件部分),本次课程设计主要是汇编语言部分的练习,通过这部分的练习,学生应该熟悉汇编语言的寻址方式和指令系统,掌握BIOS和DOS系统的功能调用,编制较大程序时的基本方法和熟悉宏汇编的编程环境。
使学生既具备完备的理论知识,也能够解决实际学习中碰到的问题。
1.2基本功能要求1.显示系统时间,把系统时间根据不同的提示输入,用不同的背景颜色和前景颜色显示于不同的位置。
2.注意把系统时间放在以【0b800】开始的显存地址中第二章程序设计2.1题目设计的主要问题和解决方法···························································一:基本流程:1:输出提示“阚鹏制作的程序”(效果最好是滚动的出项)------>3“清屏”4提示:输出依次输入的(设置光标,输出提示的字符串,接受字符,处理)--------->5屏幕接受四个输入的数据-------->·6定义宏(输入的有四个量)注意:还是用过程实现---》7循环提示输入即可二:问题:1:字体的问题,是否可以放大2:输出结果能否滚动三:技巧处理:1:对流动时间,采用调用一次系统时间,之后采取延时程序,每次延时计时为一秒(没有可行性)2:对中断的重定义四:难点:对于输出时,位置和时间的选择的输出的方式是怎么样?方法有如下的几种:(优缺点在以后补充,已经分析完全了)方案1:打印选择的菜单,进行选择缺点:选择的选项很少,极大的限制了输出结果的完美程度优点:操作很简单方案2:自己输入显示的颜色和位置,宏定义可以不?完全可以(颜色的输入实现数字变址地址与输出提示的一致)构建的数组时这样的处理情况:用每个字符组表示位置,内含多种前景颜色(这样造成了空间的浪费),还是采用分开存储的方式进行,然后用宏定义函数进行先对的取舍优点:输出结果很完美,满足使用的要求缺点:需要输入的数据相对来讲是有一定的复杂度的,但对小型的输入来讲是可以接受的方案3:输出的位置随着鼠标的位置变化而变化优点:很大程度上满足了要求,但是只能满足其中之一的要求,不能够完全满足用户的要求缺点:操作是非常复杂的最终结论:方案2 综合操作的复杂度和可执行情况来讲,只是可以接受的操作,同时它的输入也是在接受范围之内图2.4.12.3设计的不足和需要改进的地方通过努力,其实问题还是有很多很是困扰自己1:关于中断的重定义2:关于部分的寻址方式的理解和细节的把握3:难点是系统时间的动态处理第三章课程设计小结现在我来总结一下这周所学的内容以及我的心得体会。
其实最大的感悟是:自己学习的东西就是冰山一角,自己平时学的东西是在是太少了同时我觉的自己对信息的提取和自学的能力十分的欠缺,就像在图书馆查资料的时候,这种特点表现的十分的明显,同时我的实践能力真的是十分的差劲,同时在实践的时候,我觉得自己的心态真的不是很好,就像自己曾今信仰的一样,任何事情都是自己整体的反映,任何时候都在体现自己的整体水平。
本次汇编语言课程设计是利用我们平时所学的汇编知识编写一个成绩评定的小程序,刚拿到题目的时候还有点担忧。
由于平时汇编语言的知识掌握的并不牢固,并且也没有过像这样的为期一周的汇编语言实践课程。
但当静下心来仔细把问题读懂和头脑中有了大致思路的时候,这种担忧就完全消失了。
其实这次课程设计并不要求你把书上各种指令及其工能掌握的很好并且能熟练的运用汇编语言编程,而恰恰是利用这次课程设计的机会来提高这方面的能力。
这就是一个心态问题,看你有没有摆正心态,看你有没有面对挫折的勇气,如果一开始就没摆正心态,思维就会堵塞,后面就更无法做下去了。
这次课程设计让我更加懂得以后在面临困难与挫折的时候要有平和的心态,要有冷静的头脑,坦然的面对,这样才能解决问题。
有了整体思路后,编写程序就变得简单的多了,但也遇到了很多的问题,后经过老师的帮助和同学的讨论,终于又进一步完成了任意数字的输入,采用子程序的思想,简化了源程序代码,使程序结构更加紧凑明了。
本次汇编语言课程设计加深了我对汇编语言的理解和运用,一些以前不太理解的指令及其用法现在都很好的掌握了,还有分支程序和子程序的运用,尤其是程序的结构化设计思想,有了结构化设计思想,你的思路就会更加清晰,解决问题就有针对性子程序可以实现源程序的模块化,简化源程序结构。
而当这个子程序被多次使用时,子程序还可以使模块得到复用,进而提高编程效率。
通过本次汇编语言课程设计,也让我更加明白实践的重要性,如果整天的学习课本上的理论知识而不拿来用那肯定是很烦的,况且汇编语言这门课本身学起来就很烦,尤其是要去理解各种指令的功能,还要学习相应的硬件知识。
再者,学习理论知识的目的还是要拿来运用,通过实践来巩固所学的理论知识。
并且通过这次课程设计实践,让我一改往日的厌学情绪,尤其是当程序运行正确的时候,那种来自内心的成就感,让我更加有信心学好汇编语言了。
通过本次课程设计让我更深刻的明白学习要不耻下问,遇到不懂得问题要敢于向老师提问,没有什么不好意思的,不懂就是不懂。
如果遇到问题了还坐那里发呆,那肯定完成不了任务。
问老师问题,老师会帮你尽力解答,自己也需要努力。
还有遇到问题多和同学探讨,所谓“独学而无友,则孤陋而寡闻”就是这个道理,或许就在和同学的讨论过程中,点开了你的思路,问题就迎刃而解了。
我这次能够顺利的完成程序设计也是得益于老师和同学的帮组,在这里我要真心的感谢他们。
总之,这次汇编语言课程设计让我受益匪浅,我不但收获了知识,提高了能力,而且学到了很多人生的哲理。
对于学习汇编语言这门专业课,以后要多看程序,多尝试编写程序,在实践的过程中发现问题,并及时解决问题,让自己更上一层楼。
附录:源程序代码;********************************************data segmentdw 0,0 ;定义缓存数据段CLUE1 DB 'WELCOME TO USE THE SYSTEM ','$'CLUE2 DB 'WHICH W AS MADE BY KanPeng','$';注意段的长度不能太大,况且有些标点的使用也会影响程序的执行CLUE3 DB 'The system time will be presented,please input',13,10DB 'the row number (0-24),the column number (0-74)',13,10DB 'and select the background color(0-7) and the',13,10DB 'frontier color(0-9 or A-F ) by turn according to',13,10DB 'the following list:',13,10db '--------------------------------------------------------------------',13,10DB '0-black 1-blue 2-green 3-pea green',13,10db '4-red 5-pinkish red 6-brown 7-white',13,10db '8-grey 9-light blue A-pale green B-pale cerelean',13,10db 'C-light red D-light magenta E-yellow',13,10db 'F-snow white space-quit',13,10db '---------------------------------------------------------------------',13,10,'$'data2 db 4 dup(?)data ends;********************************************stack segmentdb 128 dup(0) ;定义数据段stack ends;********************************************code segmentassume cs:code,ds:databegin:mov bx,0mov ax,0b800hmov es,axmov ax,datamov ds,axmov ax,stackmov ss,axmov sp,128push esmov ax,0mov es,ax;----------------------------------------------设置光标的位置MOV AH,02HMOV BH,00 ;设置页号MOV DH,12D ;设置行号MOV DL,6D ;设置列号INT 10H;---------------------------------------------;输出提示字符串LEA D X,CLUE1MOV AH,09HINT 21HLEA D X,CLUE2MOV AH,09HINT 21H ;40行;-----------------------------------------------延时5秒,调用延时过程,0.5的十倍MOV BL,10DBACK: MOV CX,33144CALL WAITFDEC BLJNZ BACKCALL CLEAR;----------------------------------------------重新设置光标的位置MOV AH,02HMOV BH,00 ;设置页号MOV DH,00D ;设置行号MOV DL,00D ;设置列号INT 10H;-----------------------------------------------输出选项菜单LEA D X,CLUE3MOV AH,09HINT 21HMOV BH,100DHERE: MOV CX,33144CALL WAITFDEC BHJNZ HERE;******************************************************************等待输入MOV ah,01hint 21hsub al,30hmov data2,almov ah,01hint 21hsub al,30hmov data2+1,almov ah,01hint 21hsub al,30hmov data2+2,almov ah,01hint 21hsub al,30hmov data2+3,alMOV BL,100DBACK1: MOV CX,33144CALL WAITFDEC BLJNZ BACK1;-------------------------------------------------------------- 保存系统9号中断push es:[9*4]pop ds:[0]push es:[9*4+2]pop ds:[2]mov ax,offset int9cli;-------------------------------------------------------------- 用自定义的9号中断取代系统9号中断mov es:[9*4],axmov es:[9*4+2],csstipop es;----------------------------------------------------------------设置背景前景颜色mov cx,4000 ;将整个屏幕背景色设为黑色s: mov es:[di],byte ptr 01h;此处的数值为颜色的代号<<a0inc diloop smov cx,17 ;将前景色设为蓝色a: mov es:[160*2][2*2+1][bx],byte ptr 20h;此处的数值为颜色的代号<<a0 add bx,2loop a;---------------------------------------------------------------;显示开始t: mov bx,0mov cx,3mov dh,9;----------------------------------------------------------------;取得年月日并显示s1: mov al,dhout 70h,aldec dhin al,71hpush cxmov cl,4mov dl,alshr al,cladd al,30hmov es:[160*2][2*2][bx],al ;year high byte ;---------年份显示的地址,下同and dl,00001111badd dl,30h ;---------转化为ASCII码值mov es:[160*2+2*2+2][bx],dl ;year low bytemov es:[160*2][2*2+4][bx],byte ptr '/'add bx,6pop cxloop s1mov cx,3mov dh,4;------------------------------------------------------------------取得时分秒并显示s3: mov al,dhout 70h,alin al,71hmov dl,alpush cxmov cl,4shr al,cladd al,30hand dl,00001111badd dl,30hmov bp,1mov es:[160*2][2*2][bx],al ;-------------------显存地址计算行号在前,列号在后mov es:[160*2][2*2][bx].2,dl ;-------------------时分秒的地址空间mov es:[160*2][2*2][bx].4,byte ptr ':'add bx,6sub dh,2pop cxloop s3mov es:[160*2][2*2+4][bx-6].1,byte ptr 0jmp ti8: pop espop espop espop bxpop axiretmov ax,0mov es,ax;恢复9号中断push ds:[0]pop es:[9*4]push ds:[2]pop es:[9*4+2]mov ax,4c00hint 21hint9: push axpush bxpush esmov ax,0b800hmov es,axin al,60hpushfpushfpop bxand bh,11111100bpush bxpopfcall dword ptr ds:[0] ;-----------------------------真INT9例程的返回pop espop bxpop axiret ;------------------------------假INT9例程的返回;******************************************;延时过程,要求提前在其他寄存器中中转入0.5秒的倍数,循环调运WAITF PROC NEARPUSH AXWAIT1:IN AL,61HAND AL,10HCMP AL,AHJE WAIT1MOV AH,ALLOOP WAIT1POP AXRETWAITF ENDP;******************************************;清屏过程CLEAR PROC NEARPUSH AXPUSH BXPUSH CXPUSH DXMOV AX,0600HMOV BH,8aHMOV CX,0000MOV DX,184FHINT 10HPOP DXPOP CXPOP BXPOP AXRETCLEAR ENDP;***************************************************************code ends;***************************************************************end begin使用说明先将该源程序保存为(*.ASM)格式的文件,然后使用汇编软件进行编译连接后得到一个可执行文件(*.EXE),运行该文件就可使用了。