微型计算机原理课程设计

合集下载

微型计算机原理及其接口技术课程设计

微型计算机原理及其接口技术课程设计

微型计算机原理及其接口技术课程设计一、课程设计简介本门课程的设计旨在让学生理解微型计算机的基本原理,了解微型计算机的硬件组成和接口技术,能够熟练使用C语言编写微型计算机程序,并顺利设计出小型计算机系统。

该课程设计内容丰富,难度适中,让学生能够在实践中学习和掌握相关技能。

二、课程设计目标通过本门课程的学习,学生将能够:1.理解微型计算机的基本架构和原理2.熟悉微型计算机的硬件组成和接口技术3.掌握在C语言中编写单片机程序的基本方法4.掌握使用Keil C51进行单片机程序的开发5.能够顺利设计出小型计算机系统三、基本原理与硬件组成1.基本原理微型计算机是由中央处理器、存储器、输入设备、输出设备和接口电路等组成的。

其中,中央处理器是微型计算机的核心,它负责处理各种信息和数据,控制整个系统的运行。

存储器用于存储CPU的指令和数据,以及用于数据的输入、输出和传输。

输入设备用于将各种信息和数据输入到计算机系统中,如键盘、鼠标等。

输出设备用于将计算机处理的结果输出到外部设备中,如显示器、打印机等。

接口电路用于连接微型计算机和外部设备,通常包括串口、并口、USB等多种接口形式。

2.硬件组成微型计算机的硬件组成包括:1.中央处理器(CPU)2.存储器(内存和外存)3.输入设备(键盘、鼠标、扫描仪等)4.输出设备(显示器、打印机、扬声器等)5.接口电路(串口、并口、USB等)四、C语言编程开发1. 编写单片机程序的基本方法在C语言中编写单片机程序,通常需要包含一些头文件和定义一些变量。

以下是一个简单的程序代码:#include<stdio.h>#include<reg52.h>sbit LED=P0^0;void mn(){while(1){LED=0;delay(50000);LED=1;delay(50000);}}上述程序是一个简单的LED闪烁程序。

其中标记sbit用于定义LED的所在端口和引脚,P0^0表示LED接在单片机的P0.0上。

单片微型计算机原理和应用课程设计

单片微型计算机原理和应用课程设计

单片微型计算机原理和应用课程设计一、设计背景单片微型计算机是指把中央处理器、存储器、输入/输出接口和时钟等核心部件集成在一块芯片上的微型计算机。

单片微型计算机具有价格低廉、体积小、功耗低、易于编程等优点,广泛应用于各种智能控制系统中。

因此,对单片微型计算机进行深入研究和应用,具有重要的理论和实际意义。

二、课程目标本课程旨在让学生掌握单片微型计算机的基本原理和应用技术,培养学生的实际操作能力和解决实际问题的能力。

具体目标如下:1.掌握单片微型计算机的硬件结构和工作原理;2.掌握单片微型计算机的指令系统和汇编语言编程;3.掌握单片微型计算机的输入/输出接口及其编程技术;4.掌握单片微型计算机的中断响应和计时计数技术;5.了解单片微型计算机的应用领域和现状。

三、课程内容1. 单片微型计算机体系结构1.1 体系结构概述 1.2 内存管理单元 1.3 输入/输出系统 1.4 系统时钟和定时器 1.5 中断系统2. 单片微型计算机编程2.1 汇编语言基础 2.2 汇编语言程序设计 2.3 程序调试和优化3. 单片微型计算机输入/输出接口3.1 输入/输出数据格式 3.2 数据输入/输出接口 3.3 并行口输入输出接口4. 单片微型计算机中断响应和计时计数4.1 中断介绍 4.2 中断控制器 4.3 定时器和计数器5. 单片微型计算机的应用5.1 智能控制系统 5.2 计算机嵌入式系统 5.3 物联网应用四、教学方法本课程采用课堂讲授、实验教学相结合的方法,加强实践性教学。

在讲解理论的同时,引导学生开展实验设计和编程实践,以提高学生的实际操作能力和解决实际问题的能力。

五、考核方式本课程采用综合性考核方式,包括平时成绩、实验成绩和作业成绩等。

其中,平时成绩占30%,实验成绩占40%,作业成绩占30%。

六、教材和参考书目教材:《单片微型计算机原理和应用》参考书目:《单片微型计算机原理和应用教程》、《51单片机原理与应用》、《单片机原理与应用》等。

微型计算机组成原理课程设计

微型计算机组成原理课程设计

微型计算机组成原理课程设计1. 设计概述本课程设计是针对微型计算机组成原理课程的一个实践性设计。

设计内容包括微型计算机的CPU、存储器、输入输出接口等基本组成部分。

设计通过采用Verilog语言进行仿真和验证,以加深学生对微型计算机硬件实现的理解和应用。

2. 设计目标通过本课程设计,学生应该掌握以下能力:1.掌握微型计算机的CPU、存储器、输入输出接口等基本组成部分的工作原理和设计方法;2.熟练掌握Verilog语言进行硬件设计的方法;3.能够进行微型计算机硬件实现的仿真和验证。

3. 设计背景随着信息技术的迅速发展,微型计算机已经成为了我们日常生活和工作中不可或缺的一部分。

因此,对微型计算机的组成原理进行深入的理解和掌握,不仅有利于扩展个人技能和知识面,也具有重要的实际意义。

本课程设计旨在通过实践的方式,让学生更加深入地理解微型计算机的组成原理和实现方法,并能够应用所学知识进行微型计算机硬件的仿真和验证。

4. 设计内容4.1 CPU设计本设计通过Verilog语言进行CPU的设计。

学生需要掌握Verilog语言的基本语法和硬件设计方法,设计一个简单的CPU模块,并进行仿真和验证。

CPU的设计包括以下步骤:1.确定CPU的指令系统;2.设计CPU的指令格式和寻址方式;3.根据指令系统设计CPU的控制逻辑;4.设计ALU模块进行算术逻辑运算;5.设计寄存器模块进行数据存储和传输;6.进行仿真和验证。

4.2 存储器设计本设计通过Verilog语言进行存储器的设计。

学生需要掌握Verilog语言中的存储器模块的设计方法,设计一个简单的存储器模块,并进行仿真和验证。

存储器的设计包括以下步骤:1.确定存储器的存储结构和存储单元大小;2.设计存储器读写控制逻辑;3.进行仿真和验证。

4.3 输入输出接口设计本设计通过Verilog语言进行输入输出接口的设计。

学生需要掌握Verilog语言中的输入输出接口模块的设计方法,设计一个简单的输入输出接口模块,并进行仿真和验证。

微型计算机原理及其应用课程设计 (2)

微型计算机原理及其应用课程设计 (2)

微型计算机原理及其应用课程设计一、引言随着计算机科技的飞速发展,微型计算机已经成为了人们日常工作、学习不可或缺的一部分。

作为计算机基础学科,微型计算机原理及其应用的课程设计对于学生的计算机知识储备和应用能力提升具有重要的意义。

本文旨在探讨微型计算机原理及其应用课程设计的重要性,介绍课程设计的内容和要求等相关内容。

二、微型计算机原理及其应用2.1 微型计算机的定义微型计算机是指在一块半导体芯片中集成了计算机的全部或部分功能的计算机系统。

微型计算机通常由中央处理器、内存和外设等组成。

2.2 微型计算机的发展历程微型计算机的发展历程可以概括为以下几个阶段:•第一阶段:20世纪60年代到70年代初期,主要是以单芯片微处理器为核心的微型计算机时代;•第二阶段:70年代末期到80年代末期,主要是以微型计算机系统为核心的微型计算机时代;•第三阶段:90年代至今,主要是以个人计算机为核心的微型计算机时代。

2.3 微型计算机的应用领域微型计算机的应用领域非常广泛,包括但不限于以下几个方面:•科学研究领域:微型计算机可以用于科学实验数据的采集、处理和分析等;•工程技术领域:微型计算机可以用于控制和监测工业生产过程中的各种参数;•经济管理领域:微型计算机可以用于财务管理、人力资源管理等多个方面;•生活娱乐领域:微型计算机可以用于数字娱乐、互联网应用等多个方面。

三、课程设计内容和要求3.1 课程设计内容微型计算机原理及其应用的课程设计内容包括但不限于以下几个方面:•硬件方面:微型计算机的基本构成、内存管理、中央处理器、输入输出设备等;•软件方面:微型计算机的操作系统、应用软件、程序设计等;•实验设计:对于所学内容进行实际应用和实验操作。

3.2 课程设计要求微型计算机原理及其应用的课程设计要求包括但不限于以下几个方面:•学生要求掌握微型计算机的基本构成和原理,了解计算机系统的基本运作方式;•学生要求具备一定的程序设计和软件开发能力,并掌握各类软件的操作方法;•学生要求能够通过实验设计来加深对所学内容的理解和应用能力。

微机原理课程设计

微机原理课程设计

微机原理 课程设计一、课程目标知识目标:1. 让学生理解微机的基本原理和结构,掌握微处理器的工作机制。

2. 使学生掌握汇编语言的基本指令,能够阅读和编写简单的汇编程序。

3. 帮助学生了解微机系统中内存、I/O设备的基本原理及其与CPU的交互方式。

技能目标:1. 培养学生运用汇编语言进行程序设计的能力,能够实现基本的输入输出、逻辑判断和循环等操作。

2. 培养学生分析和解决微机系统常见问题的能力,如调试程序、处理硬件故障等。

3. 提高学生动手实践能力,通过课程设计项目,使学生能够独立完成一个简单的微机系统设计与实现。

情感态度价值观目标:1. 培养学生对微机原理及计算机科学的兴趣,激发他们探索精神和技术创新意识。

2. 培养学生团队协作精神,学会与他人共同分析问题、解决问题,提高沟通能力。

3. 引导学生认识到微机技术在国家经济发展和国防建设中的重要作用,增强学生的社会责任感和使命感。

课程性质:本课程为理论与实践相结合的课程,注重培养学生的实际操作能力和实际应用能力。

学生特点:学生已具备一定的电子技术和计算机基础知识,对微机原理有一定了解,但缺乏实践经验。

教学要求:教师需结合课程性质、学生特点,采用案例教学、项目驱动等教学方法,引导学生主动学习,提高学生的实践能力和综合素质。

在教学过程中,注重分解课程目标,确保学生能够达到预定的学习成果。

二、教学内容1. 微机原理概述:介绍微机的发展历程、基本结构及工作原理,重点讲解CPU、内存、I/O设备等核心组件的作用和相互关系。

相关教材章节:第一章 微机原理概述2. 汇编语言基础:讲解汇编语言的基本概念、语法和指令系统,使学生掌握汇编程序的编写和调试方法。

相关教材章节:第二章 汇编语言基础3. 微机系统编程:学习微机系统中的程序设计方法,包括顺序程序设计、分支程序设计、循环程序设计等。

相关教材章节:第三章 微机系统编程4. 内存与I/O设备:介绍内存管理、I/O设备控制原理,分析微机系统中内存、I/O设备的访问方法。

微计算机原理课程设计

微计算机原理课程设计

微计算机原理课程设计设计要求本次微计算机原理课程设计的主要目标是通过实际操作,加深学生对微处理器的理解和应用。

设计内容包括以下三个部分:1.设计一个简单的系统,包括输入、输出和控制电路,使用微处理器并编写程序,使得该系统能够对输入信号进行处理,并输出相应的结果。

2.设计一个可编程定时器,该定时器可以接受外部信号,并按照预先设定的时间间隔触发中断并进行相应的处理。

3.利用串行通信接口与计算机进行通信,实现数据的传输和处理。

设计方案系统设计该系统包括输入、输出和控制电路,使用AT89C52微处理器,输入信号为旋钮,输出信号为蜂鸣器和LED灯,控制电路为只能触发一次的电路。

程序控制如下:1.等待旋钮的输入信号;2.读取旋钮信号,并将其进行处理;3.根据处理结果控制蜂鸣器和LED灯的输出;4.控制电路只能触发一次。

该设计需要使用的器件:1.AT89C52微处理器2.旋钮3.LED灯4.蜂鸣器5.控制电路可编程定时器设计该定时器使用AT89C52微处理器,可接受外部信号并按照预先设定的时间间隔触发中断并进行相应的处理。

具体设计如下:1.设定定时器的时间间隔;2.接受外部信号触发定时器,并开始计时;3.当计时时间到达设定时间间隔时触发中断;4.进行相应的处理,并重新设定定时器的时间间隔。

该设计需要使用的器件:1.AT89C52微处理器2.外部信号源串行通信接口设计该设计使用AT89C52微处理器进行串行通信,能够与计算机进行数据传输和处理。

具体设计如下:1.设计计算机端的数据传输程序,通过串口将数据发送给微处理器;2.微处理器接收到数据之后进行处理,并将结果通过串口发送给计算机;3.计算机接收到结果后进行处理。

该设计需要使用的器件:1.AT89C52微处理器2.串口转接器实现过程系统设计实现1.绘制电路图,制作电路板;2.编写程序,将程序烧录到AT89C52微处理器中;3.连接旋钮、LED灯、蜂鸣器、控制电路和AT89C52微处理器;4.进行实验,测试系统的正确性。

微型计算机原理课程设计

微型计算机原理课程设计

微型计算机原理课程设计一、绪论微型计算机原理是计算机专业中的基础课程,是学生深入了解计算机硬件结构和工作原理的重要内容。

本次课程设计旨在通过实践让学生更加深入地理解微型计算机的各个方面,提高其掌握计算机原理和设计基本能力。

本文将介绍本次微型计算机原理课程设计的主要内容和设计思路。

二、实验目的本次实验旨在加深学生对微型计算机的理解,掌握微型计算机各个部分的工作原理和工作方式,提高其在计算机硬件设计和工程实践方面的能力。

具体目的如下:1.学习计算机硬件结构和工作原理;2.运用学习的知识,设计一台简单的微型计算机;3.熟悉计算机硬件设计的实验流程;4.掌握使用各类计算机硬件和接口的方法。

三、实验内容3.1 实验原理微型计算机是指体积小、功能完备的计算机。

微型计算机通常由中央处理器、存储器、输入输出接口、系统总线等各个部分构成。

本次实验的设计将重点涵盖以下内容:1.计算机硬件基础理论知识;2.中央处理器的工作原理;3.计算机存储器的组成和工作方式;4.输入输出接口的作用和示例;5.实际计算机的使用和调试。

3.2 设计流程本次实验设计的流程如下:1.确定本次计算机设计的具体规格和要求;2.设计计算机的主要硬件部件,包括CPU、存储器、输入输出接口等;3.进行线路图的绘制和布线连接;4.完成微型计算机的安装和系统测试;5.完成模拟CPU和程序的编程。

四、实验步骤4.1 设计计算机硬件本次设计的计算机硬件包括以下部分:1.中央处理器:选用Intel 8086 CPU;2.存储器:选择SRAM,容量为8MB;3.输入输出接口:选择标准键盘、鼠标、RGB显示器。

4.2 绘制线路图并布线对应于上述硬件设计,我们需要绘制出其线路图,并将各个硬件元件正确地连接起来。

4.3 安装微型计算机在完成线路图的布线之后,需要进行微型计算机的安装和系统测试。

此步骤中需要对各个部件进行正确的安装和配置,以确保微型计算机的各个部分都正常工作。

微机技术原理课程设计报告

微机技术原理课程设计报告

微机技术原理课程设计报告设计背景和目的:微机技术原理课程设计的主要目的是培养学生的计算机系统综合能力,通过设计和实现一个完整的微机系统,来加深学生对微机技术原理的理解,提高他们的动手能力和解决问题的能力。

本次课程设计的主题是设计一个简单的计算器程序,要求能够实现基本的四则运算功能以及其它一些扩展功能。

设计方案和流程:1. 确定系统需求:根据题目要求,确定计算器的基本功能为加减乘除四则运算,同时考虑到用户体验,还要加入其他一些功能,如开平方、取余等。

2. 确定系统架构:根据需求,确定使用的软件开发平台和工具,如C++编程语言和Visual Studio集成开发环境(IDE)。

3. 分解系统模块:根据计算器的功能,将系统分解为多个模块,如界面模块、算法模块和控制模块等。

4. 设计界面模块:根据用户交互需求,设计并实现计算器的用户界面,包括数字按钮、运算符按钮和结果显示区域等。

5. 设计算法模块:根据需求,设计并实现计算器的算法模块,包括加、减、乘除等基本运算算法,以及开平方、取余等扩展算法。

6. 设计控制模块:根据系统架构,设计并实现计算器的控制模块,用于协调界面模块和算法模块之间的交互,处理用户输入和计算结果的显示。

7. 调试和测试:在开发过程中,及时调试和测试各个模块的功能,确保各模块之间的协调正常,并对程序进行全面测试,保证程序的正确性和稳定性。

实施计划和进度安排:本次课程设计将分为多个阶段进行,每个阶段都有具体的任务和时间安排。

以下是整个设计的大致计划和进度安排:1. 第一周:确定系统需求,设计系统架构,完成界面模块的设计和实现。

2. 第二周:完成算法模块的设计和实现,完成控制模块的设计和实现。

3. 第三周:进行系统的集成测试和调试,解决存在的问题和bug。

4. 第四周:进行功能测试和性能测试,优化程序,准备最终的系统交付。

设计结果和实施效果:经过设计和实施,计算器程序可以实现基本的四则运算功能,并且还加入了一些扩展功能,如开平方、取余等。

单片微型计算机原理及应用课程设计

单片微型计算机原理及应用课程设计

单片微型计算机原理及应用课程设计一、课程设计背景随着科技的不断发展和进步,微型计算机作为一种新型的电子计算机,不断成为我们工作和生活中重要的组成部分。

单片微型计算机作为微型计算机的一种形态,其微小的尺寸和强大的功能,更加符合现代工业和电子技术的要求。

因此,深入了解单片微型计算机的原理及其应用是非常必要的。

为此,本次课程设计将介绍单片微型计算机的基本原理和应用,旨在培养学生的电子技术及计算机应用能力,为其未来的科研和工作打下坚实的基础。

二、课程设计目的本次课程设计旨在:1.熟悉单片微型计算机的基本原理及其应用;2.掌握单片微型计算机的基本编程方法;3.培养学生的动手实践能力和综合素质。

三、课程设计内容本次课程设计分为两个阶段:学习阶段和实践阶段。

学习阶段本阶段学习内容包括单片微型计算机的基本原理和基本编程方法。

1.学习单片微型计算机的基本原理,包括单片微型计算机的特点、CPU内部结构、存储器类型等内容;2.学习单片微型计算机的编程方法,包括汇编语言和C语言等内容。

实践阶段本阶段将通过实验的方式,让学生进一步掌握单片微型计算机的基本编程方法和应用。

实验内容:1.用C语言编写一个简单的计算器程序;2.用汇编语言编写一个闪烁的LED程序;3.用单片机控制蜂鸣器发出不同频率的声音;4.用单片机控制LCD显示不同内容。

本阶段的实验将帮助学生更加深入理解单片微型计算机的原理及应用,并培养其动手实践和解决问题的能力。

四、课程设计评价本次课程设计将采用综合评价的方法。

评价内容包括:1.学生的课堂表现;2.作业完成情况;3.实验报告质量;4.期末综合考试。

五、课程设计总结本次课程设计立足于培养学生的计算机应用能力和动手实践能力,通过学习单片微型计算机的基本原理和应用,让学生深入了解微型计算机的工作原理,为其今后的研究和工作打下基础。

通过实验的方式,让学生更加深入理解单片微型计算机的编程方法和应用,培养其动手实践和解决问题的能力。

微机原理课程设计

微机原理课程设计

微机原理课程设计一、课程设计背景。

微机原理是计算机专业的一门重要课程,它主要介绍计算机硬件系统的基本原理和结构,对于培养学生的计算机基本功和解决实际工程问题具有重要意义。

本课程设计旨在通过实际操作,加深学生对微机原理知识的理解,提高他们的动手能力和解决问题的能力。

二、课程设计内容。

1. 总体设计要求。

本课程设计旨在设计一个简单的微机系统,包括CPU、存储器、输入输出设备等基本组成部分。

学生需要通过课程设计,了解微机系统的基本组成和工作原理,掌握微机系统的设计方法和技术。

2. 课程设计步骤。

(1)确定系统结构。

首先,学生需要确定所设计微机系统的结构,包括CPU的选择、存储器的组织、输入输出设备的设计等。

在确定系统结构的过程中,学生需要考虑系统的性能、成本和可扩展性等因素。

(2)系统设计与实现。

在确定系统结构之后,学生需要进行系统的设计和实现。

这包括CPU的指令系统设计、存储器的地址映射和数据传输、输入输出设备的接口设计等。

在设计和实现的过程中,学生需要考虑系统的稳定性、可靠性和实用性。

(3)系统调试与测试。

完成系统设计和实现之后,学生需要进行系统的调试和测试。

这包括系统的功能测试、性能测试和稳定性测试等。

通过调试和测试,学生可以发现系统中存在的问题,并进行及时的修改和优化。

三、课程设计评价。

通过本课程设计,学生可以深入了解微机系统的基本原理和结构,掌握微机系统的设计方法和技术。

同时,通过实际操作,学生可以提高动手能力和解决问题的能力。

本课程设计旨在培养学生的计算机基本功,为他们将来的工程实践打下坚实的基础。

四、课程设计展望。

微机原理课程设计是计算机专业的一门重要课程,它对学生的综合能力有较高的要求。

随着计算机技术的不断发展,微机原理课程设计也将不断更新和完善,以适应新技术的发展和应用。

希望通过本课程设计,可以激发学生的学习兴趣,培养他们的创新精神和实践能力,为我国计算机技术的发展做出贡献。

五、总结。

简易微机原理课程设计

简易微机原理课程设计

简易微机原理课程设计一、教学目标本课程的学习目标包括知识目标、技能目标和情感态度价值观目标。

知识目标要求学生掌握简易微机的基本原理和组成结构,理解微机的工作原理和操作方法。

技能目标要求学生能够使用微机进行简单的编程和操作,具备解决实际问题的能力。

情感态度价值观目标要求学生培养对微机的兴趣和好奇心,提高信息技术的素养,认识到微机在现代社会中的重要性和应用前景。

通过分析课程性质、学生特点和教学要求,明确课程目标,将目标分解为具体的学习成果。

学生将能够理解微机的基本原理和组成结构,能够使用微机进行简单的编程和操作,解决实际问题。

学生还将培养对微机的兴趣和好奇心,提高信息技术的素养,认识到微机在现代社会中的重要性和应用前景。

二、教学内容根据课程目标,选择和教学内容,确保内容的科学性和系统性。

教学大纲将明确教学内容的安排和进度,指出教材的章节和列举内容。

本课程的教学内容将包括以下几个方面:1.微机的基本原理:介绍微机的工作原理和基本组成结构,包括中央处理器、内存、输入输出设备等。

2.微机的操作方法:讲解如何使用微机进行操作,包括启动和关闭微机、使用键盘和鼠标、操作桌面和应用程序等。

3.简单的编程:介绍基本的编程概念和编程语言,教授学生如何编写简单的程序,实现特定的功能。

4.解决实际问题:通过案例分析和实验操作,让学生运用所学的知识和技能解决实际问题,如编写简单的计算器程序、制作简单的电子等。

三、教学方法选择合适的教学方法,如讲授法、讨论法、案例分析法、实验法等,以激发学生的学习兴趣和主动性。

1.讲授法:通过教师的讲解和演示,向学生传授微机的基本原理和操作方法,提供系统的知识体系。

2.讨论法:学生进行小组讨论和交流,鼓励学生提出问题、分享观点,培养学生的思考和表达能力。

3.案例分析法:通过分析实际案例,让学生将所学的知识应用到具体情境中,提高学生的问题解决能力。

4.实验法:安排实验课程,让学生亲自动手操作微机,进行编程和实验操作,增强学生的实践能力。

微型计算机原理课设

微型计算机原理课设

《微型计算机原理》课程设计题目:竞赛抢答器设计姓名:赵浩淞学号:40850020班级:电081指导教师:董洁日期:2010.12前言本次课程设计的内容是设计一个6路抢答器,并对抢答成功、抢答犯规、响铃提示等实际情况进行软硬件模拟。

设计过程中,主要用到的芯片有可编程中断控制器8259A、可编程并行接口芯片8255A、可编程定时器/计数器芯片8253等。

硬件方面,原理图的设计是基于Labcenter electronics公司出版的Proteus,它强大的仿真能力让我赞叹不已的同时,也受益匪浅。

软件方面,程序的设计是基于8086/8088汇编语言在轻松汇编软件上进行编写和调试,它小巧方便且功能齐全。

反复推敲的设计思路,充满艰辛而又饶有趣味的设计过程,成功的软、硬件结合,再加上日复一日的努力奋斗,才有了今日之设计成果。

在要求的基础之上,我还加入了一些自主创新的东西。

设计完成之时,本人激动的心情,溢于言表。

虽然,我知道,我的设计成果之中一定还存在很多不足之处,很多可以优化的地方,甚至,有可能还会有一些漏洞。

但是,整个过程我的的确确努力了,并全身心投入于其中了。

我尽量做到了我所能做到的最好。

下面,我将对我的设计思路、设计过程、设计心得等逐一进行详细的阐释。

烦请老师审阅。

特此感谢董洁老师一学期悉心的教导。

目录第一章课程设计任务书。

4 第二章设计。

5 2.1 设计思路。

5 2.2 硬件设计。

6 2.3 软件设计。

7 第三章小结及参考文献。

10 第四章课程设计图纸。

11 第五章程序清单。

12第一章设计要求设计一个具有4(6)路抢答的抢答器,启动计算机,计算机自动为系统各芯片进行初始化,抢答器开始工作。

比赛开始,在主持人按下开始键,绿灯亮后,选手才可开始抢答,否则违规。

利用并行接口和开关键。

逻辑开关K0——K3(5)代表抢答按钮,当某个逻辑开关闭合时,相当于抢答按钮按下。

若选手抢答成功,黄灯亮,七段数码管显示选手号码,扬声器鸣叫。

微型计算机组成原理教学设计

微型计算机组成原理教学设计

微型计算机组成原理教学设计前言微型计算机组成原理是学习计算机科学和技术的重要课程之一。

它涉及到计算机体系结构、数字逻辑、组合电路、时序电路等方面的知识。

本文将从教学目标、教学内容、教学方法、教学评价等方面进行微型计算机组成原理教学设计的探讨。

教学目标1.掌握微型计算机的体系结构,能够了解微机内部各部件的功能、性能、特点;2.掌握微型计算机的运算方式和指令系统,能够用汇编语言编写简单程序;3.掌握数字逻辑、组合电路、时序电路等基础知识,能够分析并设计数字电路;4.提升学生的学科综合能力和解决问题的能力。

教学内容第一章微型计算机系统概述1.微型计算机是什么,它有哪些特点和优势;2.微机的发展历程,不同微机体系结构的特点和应用。

第二章计算机体系结构1.CPU、存储器、I/O接口的功能、性能、特点;2.存储器层次结构和缓存管理;3.总线原理和总线控制技术。

第三章计算机的运算方式1.定点和浮点运算;2.描述微机的数据类型和数据结构,了解寄存器和内存的操作;3.汇编语言编程基础。

第四章计算机的指令系统1.指令的种类和格式;2.指令的编码方式和寻址方式;3.指令的执行过程。

第五章数字逻辑1.数字逻辑基础:逻辑运算、门电路和组合电路;2.时序电路基础:时钟、触发器以及寄存器;3.CPU中的控制电路和状态机。

教学方法1.“理论讲解 + 示例演示”相结合的教学方法,让学生理解与实践相结合;2.“个性化学习 + 团队合作”相结合的教学方法,让学生在自主探究的同时培养协作精神;3.“探究式学习 + 手写代码”相结合的教学方法,让学生深入理解微型计算机组成原理。

教学评价1.以考试、作业、实验和项目为评价主要方式;2.通过考试检验学生对知识的掌握程度;3.通过作业、实验和项目测试学生的实践能力和创新能力。

总结微型计算机组成原理是一门重要的计算机课程,本文提出了基于教学目标、教学内容、教学方法和教学评价的教学设计方案,旨在帮助教师更好地组织教学活动,提高学生的学习效果。

《微型计算机原理及应用》教案

《微型计算机原理及应用》教案

《微型计算机原理及应用》教案一、教学目标1. 了解微型计算机的基本概念、发展历程和分类。

2. 掌握微型计算机的基本组成原理和硬件结构。

3. 熟悉微型计算机的指令系统、编程方法和应用领域。

4. 培养学生的动手实践能力和团队协作精神。

二、教学内容1. 微型计算机的基本概念和发展历程2. 微型计算机的分类和性能指标3. 微型计算机的基本组成原理4. 微型计算机的硬件结构5. 微型计算机的指令系统三、教学方法1. 采用讲授法,讲解微型计算机的基本概念、发展历程、分类、组成原理、硬件结构和指令系统。

2. 采用案例分析法,分析微型计算机在实际应用中的案例,提高学生的实践能力。

3. 采用小组讨论法,引导学生分组讨论微型计算机的相关问题,培养学生的团队协作精神。

4. 采用实践教学法,组织学生进行上机操作,巩固所学知识。

四、教学资源1. 教材:《微型计算机原理及应用》2. 课件:Microsoft PowerPoint3. 实验设备:微型计算机及相关实验器材4. 网络资源:相关学术论文、教程、案例等五、教学评价1. 平时成绩:包括课堂表现、作业完成情况、实验报告等,占总评的40%。

2. 期末考试:包括选择题、填空题、简答题和计算题,占总评的60%。

六、教学安排1. 课时:共计32课时,其中理论教学24课时,实验教学8课时。

2. 教学进度安排:第1-4课时:微型计算机的基本概念和发展历程第5-8课时:微型计算机的分类和性能指标第9-12课时:微型计算机的基本组成原理第13-16课时:微型计算机的硬件结构第17-20课时:微型计算机的指令系统第21-24课时:微型计算机的编程方法和应用领域第25-28课时:实验教学(上机操作)第29-32课时:课程总结和期末考试辅导七、教学活动1. 课堂讲授:教师通过PPT演示文稿,讲解微型计算机的基本概念、发展历程、分类、组成原理、硬件结构和指令系统。

2. 案例分析:教师挑选实际应用案例,分析微型计算机在各个领域的应用,引导学生思考和讨论。

微型计算机原理第二版课程设计

微型计算机原理第二版课程设计

微型计算机原理第二版课程设计设计要求本次微型计算机原理第二版课程设计要求完成以下任务:1.通过仿真软件搭建一个包含数据总线、地址总线和控制总线的8位微处理器系统;2.编写汇编程序,实现输入两个数字并求和的功能;3.将汇编程序烧录到EPROM中;4.将EPROM插入到主板上,通过仿真软件模拟运行烧录的程序;5.在仿真软件上展示实现输入两个数字并求和的演示过程。

系统设计硬件设计本设计采用8位微处理器系统。

该系统主要由以下部分组成:•中央处理器(CPU)•存储器(EPROM和RAM)•输入及控制电路CPU负责控制系统的运行,包括指令的取指、执行和跳转等。

本设计采用8位CPU,即每个指令占用8位。

存储器主要分为EPROM和RAM两种。

EPROM用于存储汇编程序,而RAM用于存放数据和程序的临时变量。

输入及控制电路包括时钟、复位、中断等控制信号以及输入输出接口。

软件设计本设计的汇编程序主要完成输入两个数字并求和的功能。

程序首先从外部输入两个数字,将它们存放在指定的内存单元中。

然后,通过ALU模块将两个数字相加,并将结果存放在目标内存单元中。

最后,程序将结果输出到外部设备上。

汇编程序汇编语言说明为了实现输入两个数字并求和的功能,本设计采用了一种简单的汇编语言。

该语言包含以下指令:1.MOV A, Rn –将Rn中的数值移动到A寄存器中;2.MOV Rn, A –将A寄存器中的数值移动到Rn中;3.ADD Rn –将A寄存器中的数值加上Rn中的数值,并将结果存放到A寄存器中;4.IN Rn –将一个外设输入值存放到Rn寄存器中;5.OUT Rn –将Rn寄存器中的值输出到一个外设;输入两个数字并求和程序首先要求输入两个数字,并将它们存放在内存的指定单元中。

具体实现如下:; 输入两个数字IN R0 ; 输入第一个数字MOV A, R0 ; 将第一个数字存放到A寄存器中MOV R2, A ; 将A寄存器中的数值移动到R2中IN R1 ; 输入第二个数字MOV A, R1 ; 将第二个数字存放到A寄存器中MOV R3, A ; 将A寄存器中的数值移动到R3中其中,R2和R3分别用来存放输入的两个数字。

简单微机原理课程设计

简单微机原理课程设计

简单微机原理课程设计一、课程目标知识目标:1. 让学生掌握微机的基本原理,包括CPU的结构与功能、内存的工作原理、输入输出设备的作用。

2. 使学生理解微机系统的组成,包括硬件和软件的协调工作方式。

3. 让学生了解微机的发展历程,掌握不同时期微机技术的特点。

技能目标:1. 培养学生运用所学的微机原理,分析并解决简单微机系统问题的能力。

2. 提高学生动手实践能力,能够组装和调试简单的微机系统。

3. 培养学生查阅相关资料,了解微机技术最新发展的能力。

情感态度价值观目标:1. 培养学生对微机技术的兴趣,激发他们探索未知、勇于创新的热情。

2. 培养学生的团队协作意识,使他们在学习过程中学会分享、交流和合作。

3. 引导学生认识到微机技术在国家发展和个人生活中的重要性,培养他们的责任感和使命感。

本课程针对的学生特点是具有一定电子技术基础,好奇心强,喜欢探索新知识。

在教学过程中,要注重理论与实践相结合,充分调动学生的主观能动性,培养他们的问题解决能力和创新意识。

通过本课程的学习,期望学生能够掌握简单微机原理,为今后的学习和工作打下坚实基础。

二、教学内容本课程教学内容主要包括以下几部分:1. 微机概述:介绍微机的发展历程、应用领域及发展趋势。

- 教材章节:第一章 微机概述2. 微机硬件系统:讲解CPU、内存、输入输出设备等硬件组成部分的工作原理及相互关系。

- 教材章节:第二章 微机硬件系统3. 微机软件系统:介绍操作系统、编程语言等软件组成部分的基本概念和应用。

- 教材章节:第三章 微机软件系统4. 微机组装与调试:指导学生动手组装微机系统,并进行调试。

- 教材章节:第四章 微机组装与调试5. 微机故障分析与维修:分析常见微机故障现象,讲解故障诊断与维修方法。

- 教材章节:第五章 微机故障分析与维修6. 微机新技术与发展趋势:探讨当前微机领域的热点技术,如人工智能、物联网等,并展望未来发展。

- 教材章节:第六章 微机新技术与发展趋势教学内容安排与进度:1. 微机概述(1课时)2. 微机硬件系统(2课时)3. 微机软件系统(2课时)4. 微机组装与调试(2课时)5. 微机故障分析与维修(2课时)6. 微机新技术与发展趋势(1课时)在教学过程中,要注重理论与实践相结合,结合教材内容,有针对性地进行讲解和实操演示,使学生在掌握基本原理的同时,提高动手实践能力。

微型计算机原理课程设计(详细版)

微型计算机原理课程设计(详细版)

微型计算机原理课程设计学院专业班级学号姓名一、目的结合微型计算机课程的学习,进一步巩固已学的知识,同时针对计算机原理知识的具体应用,学会对系统中DOS和BIOS的使用。

学会使用屏幕编辑程序——EDIT,弄懂汇编程序的上级过程以及如何运用DEBUG软件进行汇编程序的调试。

二、内容1.字符串的匹配为掌握提示信息的设置方法及读取键入信息的方法。

编写程序事先两个字符串的比较。

如相同,则显示“MATCH”,否则,则显示“NO MATCH”2.从键盘输入数据并显示的设计为掌握接受键盘数据的方法,并了解将键盘数据显示时必须转化为ASCII 码的原理。

编写程序,将键盘接受到的四位十六进制数据转化为等值的二进制数,再显示在终端上。

3.响铃设计为掌握响铃的使用方法。

编写程序,从键盘接受输入字符,如是数字N,则响铃N次,如果不是数字,则不响。

4.将键盘输入的小写字母转化成大写字母的设计为了解小写字母和大写字母在计算机内的表示方法,并学习如何进行转换,编写程序,接受键盘字符,并将其中的小写字母转变为大写字母,然后显示在屏幕上。

5. 学生成绩名次表设计为进一步熟悉排序方法,编写程序,将100以内的30个成绩存入首址为1000H 的存储区中。

1000H+i表示学号为i的学生成绩。

编写程序使得在2000H开始的区域排出名次表,2000H+i为学号i的学生的名次。

编写程序如下学生成绩名次表流程图编写程序如下CRLF MACROAMOV AH,02H AS MOV DL,0DH INT 21H MOV AH,02H MOV DL,0AH INT 21H ENDMDATA SEGMENTSTUNUM EQU 30MESS1 DB 'PLEASE INPUT THE 30 SCORE '0DH,0AH,'$'ERROR DB 'ERROR!',0DH,0AH,'$'MESS2 DB 'THE ORDER :'0DH,0AH ,'$'EMARK DB ?ORG 1000HSCORE DB 30 DUP(?)ORG 2000HSEQU DB 30 DUP(?)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATA ;程序初始化MOV DS,AXMOV ES,AXMOV AH,09HMOV DX,OFFSET MESS1INT 21H ; 9号功能调用,显示提示信息MOV SI,OFFSET SCORE ; 成绩表首址赋给SIMOV CX,STUNUM ;学生数送CXMOV EMARK,0UUU: CALL GETNUM ;读取键入成绩值送DXCMP EMARK,01H ;如果输入不符合要求则重新输入JZ STARTMOV [SI],DL ; 存入成绩表缓冲区中INC SI ;指向下一单元LOOP UUUMOV CX,STUNUM ;学生数MOV DI,OFFSET SEQU ;名次表首地址赋给DIVVV: CALL SCAN ;扫描子程序MOV AL,STUNUM ;学生数送给ALSUB AL,CLINC AL ;计算名次,并把名次赋给ALMOV BX,DXMOV [DI+BX],AL ;把名次再赋给对应的DX学号LOOP VVV ;MOV AH,09HLEA DX,MESS2INT 21HMOV CX,STUNUM ;学生数赋给CXMOV SI,OFFSET SEQU ;名次表首地址赋给SIWWW: MOV AL,[SI]CALL DISPIPUSH DXPUSH AXMOV AH,02MOV DL,20HINT 21HPOP AXPOP DXI NC SILOOP WWW ;显示排定的学生名次MOV AX,4CHINT 21HSCAN PROC NEAR ;子程序,每扫描一遍成绩表缓冲区, 找出其成绩最高者;(由DX指针指示对应学生),之后将该成绩清除以便下一次扫描PUSH CXMOV CX,STUNUM ;学生数MOV AL,00H ;最低成绩MOV BX,OFFSET SCOREMOV SI,BX ;指向成绩表首址CCC: CMP AL,[SI]JAE JJJ ;AL中的成绩不低于成绩表指针SI所指单元的成绩则转JJJMOV AL,[SI] ;AL存放较高的成绩MOV DX,SISUB DX,BX ;DX为对应学号JJJ: INC SI ;指向下一单元LOOP CCCADD BX,DXMOV BYTE PTR [BX],00H ;本次扫描成绩最高者清0,以便后面的比较POP CXRETSCAN ENDPDISPI PROC NEAR ;显示子程序PUSH CXMOV BL,ALMOV DL,BLMOV CL,04ROL DL,CLAND DL,0FHCALL DISPLMOV DL,BLAND DL,0FHCALL DISPLPOP CXRETDISPI ENDPDISPL PROC NEARADD DL,30HCMP DL,3AHJB DDDADD DL,27HDDD: MOV AH,02HINT 21HRETDISPL ENDPGETNUM PROC NEAR ;键读入子程序PUSH CXXOR DX,DXGGG: MOV AH,01HINT 21HCMP AL,0DHJZ PPPSUB AL,30HJB KKKCMP AL,09HJBE GETSJMP KKKGETS: MOV CL,04SHL DX,CLXOR AH,AHADD DX,AXJMP GGGKKK: MOV AH,09HMOV DX,OFFSET ERROR ;显示错误INT 21HMOV EMARK,01HPPP: PUSH DXCRLFPOP DXPOP CXRETGETNUM ENDPCODE ENDSEND START结果:三,心得体会经过这一周的微机原理课程设计的磨练,首先让我认识到自己的不足,对编程的生疏,思路的限制,知道自己还有很多不懂的地方,还有很大的发展的余地,当然正因为如此我也成为了一名受益者,让自己得到了一个星期的锻炼,对CMD命令提示符这个编程有了更多的认识。

微型计算机原理课程设计详细版样本

微型计算机原理课程设计详细版样本

微型计算机原理课程设计学院专业班级学号姓名一、目的结合微型计算机课程的学习, 进一步巩固已学的知识, 同时针对计算机原理知识的具体应用, 学会对系统中DOS和BIOS的使用。

学会使用屏幕编辑程序——EDIT,弄懂汇编程序的上级过程以及如何运用DEBUG软件进行汇编程序的调试。

二、内容1.字符串的匹配为掌握提示信息的设置方法及读取键入信息的方法。

编写程序事先两个字符串的比较。

如相同, 则显示”MATCH”,否则, 则显示”NO MATCH”2.从键盘输入数据并显示的设计为掌握接受键盘数据的方法, 并了解将键盘数据显示时必须转化为ASCII码的原理。

编写程序, 将键盘接受到的四位十六进制数据转化为等值的二进制数, 再显示在终端上。

3.响铃设计为掌握响铃的使用方法。

编写程序, 从键盘接受输入字符, 如是数字N, 则响铃N次, 如果不是数字, 则不响。

4.将键盘输入的小写字母转化成大写字母的设计为了解小写字母和大写字母在计算机内的表示方法, 并学习如何进行转换, 编写程序, 接受键盘字符, 并将其中的小写字母转变为大写字母, 然后显示在屏幕上。

5. 学生成绩名次表设计为进一步熟悉排序方法, 编写程序, 将100以内的30个成绩存入首址为1000H的存储区中。

1000H+i表示学号为i的学生成绩。

编写程序使得在 H开始的区域排出名次表, H+i为学号i的学生的名次。

编写程序如下学生成绩名次表流程图编写程序如下CRLF MACROAMOV AH,02H AS MOV DL,0DHINT 21HMOV AH,02HMOV DL,0AHINT 21HENDMDATA SEGMENTSTUNUM EQU 30MESS1 DB 'PLEASE INPUT THE 30 SCORE '0DH,0AH,'$' ERROR DB 'ERROR!',0DH,0AH,'$'MESS2 DB 'THE ORDER :'0DH,0AH ,'$'EMARK DB ?ORG 1000HSCORE DB 30 DUP(?)ORG HSEQU DB 30 DUP(?)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATA ; 程序初始化MOV DS,AXMOV ES,AXMOV AH,09HMOV DX,OFFSET MESS1INT 21H ; 9号功能调用, 显示提示信息MOV SI,OFFSET SCORE ; 成绩表首址赋给SIMOV CX,STUNUM ;学生数送CXMOV EMARK,0UUU: CALL GETNUM ;读取键入成绩值送DX CMP EMARK,01H ; 如果输入不符合要求则重新输入JZ STARTMOV [SI],DL ; 存入成绩表缓冲区中INC SI ;指向下一单元LOOP UUUMOV CX,STUNUM ;学生数MOV DI,OFFSET SEQU ;名次表首地址赋给DIVVV: CALL SCAN ;扫描子程序MOV AL,STUNUM ;学生数送给ALSUB AL,CLINC AL ;计算名次, 并把名次赋给ALMOV BX,DXMOV [DI+BX],AL ;把名次再赋给对应的DX学号LOOP VVV ;MOV AH,09HLEA DX,MESS2INT 21HMOV CX,STUNUM ;学生数赋给CXMOV SI,OFFSET SEQU ;名次表首地址赋给SI WWW: MOV AL,[SI]CALL DISPIPUSH DXPUSH AXMOV AH,02MOV DL,20HINT 21HPOP AXPOP DXI NC SILOOP WWW ;显示排定的学生名次MOV AX,4CHINT 21HSCAN PROC NEAR ;子程序,每扫描一遍成绩表缓冲区, 找出其成绩最高者;(由DX指针指示对应学生),之后将该成绩清除以便下一次扫描PUSH CX。

微型计算机原理及应用课程设计

微型计算机原理及应用课程设计

微型计算机原理及应用课程设计1. 课程设计背景微型计算机作为现代计算机技术中的一种重要形式,在现代社会中广泛应用。

它的出现,极大地改变了人们的生产和生活方式。

随着科技的不断进步和发展,微型计算机得到了越来越广泛的应用。

微型计算机原理及应用课程设计是计算机专业理论与技能应用实践之间的桥梁,有助于计算机专业学生更好地掌握微型计算机相关技术。

2. 课程设计目标本课程设计旨在通过实际案例的讲解,让学生更好地掌握微型计算机原理及应用的基本知识和方法,并能够独立完成简单的微型计算机系统设计和开发。

具体目标如下:1.掌握微型计算机的基本组成结构与工作原理;2.掌握微型计算机的系统调试和故障排除技能;3.熟悉微型计算机系统软件的应用;4.能够独立完成微型计算机系统设计和开发;5.培养学生的实际应用能力和团队协作精神。

3. 课程设计内容与方法3.1 课程设计内容本课程设计包括以下四个部分:1.微型计算机系统硬件设计;2.微型计算机系统软件编程;3.微型计算机系统调试与故障排除;4.微型计算机系统应用实例。

3.2 课程设计方法本课程设计采取理论讲解和实践操作相结合的授课方式,其中理论讲解占总学时的40%,实践操作占总学时的60%。

具体的课程设计方法如下:1.课堂理论讲解:通过教师讲解和案例分析等形式,让学生了解微型计算机的工作原理、系统硬件的组成结构、软件编程的基本技能和调试故障排除技巧等。

2.实践操作:让学生根据实际需求和任务,独立或协作完成微型计算机系统的设计和开发。

4. 课程设计考核本课程设计的考核方式根据课程设计内容考核学生的软硬件设计能力、实践操作能力和应用能力,主要考核内容如下:1.微型计算机系统硬件设计成果(占总成绩的40%);2.微型计算机系统软件编程成果(占总成绩的40%);3.微型计算机系统实践操作成果(占总成绩的20%)。

5. 课程设计总结微型计算机原理及应用课程设计是计算机专业学生理论与实践结合的一次很好的实践机会。

微型计算机原理与应用课程设计

微型计算机原理与应用课程设计

微型计算机原理与应用课程设计
1. 概述
微型计算机(Microcomputer)是一种以单片机或微处理器为核心的小型计算机系统,随着计算机技术的不断发展,其应用范围也越来越广泛。

微型计算机原理与应用课程是计算机类专业中的一门必修课程,在课程设计中,学生需要了解微型计算机的组成原理、掌握编程技巧,同时结合实践应用,提高实际操作能力。

2. 实验目的
本次课程设计旨在通过实践操作,掌握微型计算机原理和应用技巧,并通过实现一个简单的控制系统来巩固学习成果。

具体目的如下:
•了解微型计算机的组成和工作原理;
•掌握微型计算机编程语言及编程技巧;
•实践应用,并提升实际操作能力。

3. 实验内容
本次课程设计的实验内容是设计一个自动化控制系统,掌握微型计算机工作原理,并通过编写程序,实现对温度、湿度等参数的监测和控制。

具体分为以下几步:
3.1 硬件设计
硬件设计包括电路图设计、元器件选型和PCB绘制三个部分。

•电路图设计:根据控制系统功能需求,设计相应的电路图;
•元器件选型:选择合适的传感器和各类器件;
•PCB绘制:通过PCB绘制软件将电路图转换为实际的电路板。

需要注意电路的布局和焊接质量。

1。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

微型计算机原理课程设计学院专业班级学号姓名一、目的结合微型计算机课程的学习,进一步巩固已学的知识,同时针对计算机原理知识的具体应用,学会对系统中DOS和BIOS的使用。

学会使用屏幕编辑程序——EDIT,弄懂汇编程序的上级过程以及如何运用DEBUG软件进行汇编程序的调试。

二、内容1.字符串的匹配为掌握提示信息的设置方法及读取键入信息的方法。

编写程序事先两个字符串的比较。

如相同,则显示“MATCH”,否则,则显示“NO MATCH”2.从键盘输入数据并显示的设计为掌握接受键盘数据的方法,并了解将键盘数据显示时必须转化为ASCII 码的原理。

编写程序,将键盘接受到的四位十六进制数据转化为等值的二进制数,再显示在终端上。

3.响铃设计为掌握响铃的使用方法。

编写程序,从键盘接受输入字符,如是数字N,则响铃N次,如果不是数字,则不响。

4.将键盘输入的小写字母转化成大写字母的设计为了解小写字母和大写字母在计算机内的表示方法,并学习如何进行转换,编写程序,接受键盘字符,并将其中的小写字母转变为大写字母,然后显示在屏幕上。

5. 学生成绩名次表设计为进一步熟悉排序方法,编写程序,将100以内的30个成绩存入首址为1000H 的存储区中。

1000H+i表示学号为i的学生成绩。

编写程序使得在2000H开始的区域排出名次表,2000H+i为学号i的学生的名次。

编写程序如下学生成绩名次表流程图编写程序如下CRLF MACROAMOV AH,02H AS MOV DL,0DH INT 21H MOV AH,02H MOV DL,0AH INT 21H ENDMDATA SEGMENTSTUNUM EQU 30MESS1 DB 'PLEASE INPUT THE 30 SCORE '0DH,0AH,'$'ERROR DB 'ERROR!',0DH,0AH,'$'MESS2 DB 'THE ORDER :'0DH,0AH ,'$'EMARK DBORG 1000HSCORE DB 30 DUP()ORG 2000HSEQU DB 30 DUP()DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATA ;程序初始化MOV DS,AXMOV ES,AXMOV AH,09HMOV DX,OFFSET MESS1INT 21H ; 9号功能调用,显示提示信息 MOV SI,OFFSET SCORE ; 成绩表首址赋给SIMOV CX,STUNUM ;学生数送CXMOV EMARK,0UUU: CALL GETNUM ;读取键入成绩值送DXCMP EMARK,01H ;如果输入不符合要求则重新输入 JZ STARTMOV [SI],DL ; 存入成绩表缓冲区中INC SI ;指向下一单元LOOP UUUMOV CX,STUNUM ;学生数MOV DI,OFFSET SEQU ;名次表首地址赋给DIVVV: CALL SCAN ;扫描子程序MOV AL,STUNUM ;学生数送给ALSUB AL,CLINC AL ;计算名次,并把名次赋给AL MOV BX,DXMOV [DI+BX],AL ;把名次再赋给对应的DX学号 LOOP VVV ;MOV AH,09HLEA DX,MESS2INT 21HMOV CX,STUNUM ;学生数赋给CXMOV SI,OFFSET SEQU ;名次表首地址赋给SIWWW: MOV AL,[SI]CALL DISPIPUSH DXMOV AH,02MOV DL,20HINT 21HPOP AXPOP DXI NC SILOOP WWW ;显示排定的学生名次MOV AX,4CHINT 21HSCAN PROC NEAR ;子程序,每扫描一遍成绩表缓冲区, 找出其成绩最高者 ;(由DX指针指示对应学生),之后将该成绩清除以便下一次扫描 PUSH CXMOV CX,STUNUM ;学生数MOV AL,00H ;最低成绩MOV BX,OFFSET SCOREMOV SI,BX ;指向成绩表首址CCC: CMP AL,[SI]JAE JJJ ;AL中的成绩不低于成绩表指针SI所指单元的成绩则转JJJMOV AL,[SI] ;AL存放较高的成绩MOV DX,SISUB DX,BX ;DX为对应学号JJJ: INC SI ;指向下一单元LOOP CCCADD BX,DXMOV BYTE PTR [BX],00H ;本次扫描成绩最高者清0,以便后面的比较POP CXRETSCAN ENDPDISPI PROC NEAR ;显示子程序PUSH CXMOV BL,ALMOV DL,BLMOV CL,04ROL DL,CLAND DL,0FHCALL DISPLMOV DL,BLAND DL,0FHCALL DISPLPOP CXRETDISPI ENDPDISPL PROC NEARCMP DL,3AHJB DDDADD DL,27HDDD: MOV AH,02HINT 21HRETDISPL ENDPGETNUM PROC NEAR ;键读入子程序 PUSH CXXOR DX,DXGGG: MOV AH,01HINT 21HCMP AL,0DHJZ PPPSUB AL,30HJB KKKCMP AL,09HJBE GETSJMP KKKGETS: MOV CL,04SHL DX,CLXOR AH,AHADD DX,AXJMP GGGKKK: MOV AH,09HMOV DX,OFFSET ERROR ;显示错误INT 21HMOV EMARK,01HPPP: PUSH DXCRLFPOP DXPOP CXRETGETNUM ENDPCODE ENDSEND START结果:三,心得体会经过这一周的微机原理课程设计的磨练,首先让我认识到自己的不足,对编程的生疏,思路的限制,知道自己还有很多不懂的地方,还有很大的发展的余地,当然正因为如此我也成为了一名受益者,让自己得到了一个星期的锻炼,对CMD命令提示符这个编程有了更多的认识。

在这一个星期中,可以说是苦大于甜,这些程序题目都像一座座大山在我的前面,我必须很努力的去克服这些困难,通过在网上搜集资料以及去询问同学,我也渐渐的克服了这些。

下面我就一个一个程序的来叙述一下我这个星期的成果吧首先第一个程序是字符串的匹配设计,思路是:字符串的输入是用9号功能调用,但是要注意的是必须以‘$’作为结束符,否则运行结果是乱码,我就是遇到乱码的,后来询问同学以及查看书籍知道了这个很重要的一点,然后既然是匹配,那肯定是两个相等长度的字符串的比较了,如果是两个长度不等的字符串那么就可以直接输出’NO MATCH’,然后一个一个的字符进行比较,如果相等则比较下一个,如果不相等,则直接输出‘ NO MATCH’,知道每一个字符都相等那么输出‘ MATCH’,则可以得出编写此程序得到‘MATCH’结果的要求是1、两个字符串长度必须相等2、相对应的每一个字符都必须相等。

程序的运行结果第二个程序是从键盘输入数据并显示的设计。

大概思路:从键盘接受到四位十六进制,首先要判断接收到的是不是符合要求,是不是在0-F中,则要先判断,如果是则进行下面的步骤,如果是回车或者空格则结束程序,如果不是则显示‘ERROR!’,其次输出二进制是一位一位的显示,我们可以把四位十六进制数放在BX中,让它循环左移一位,并且取二进制的第八位,让高七位置零,显示最低位加上30H的对应ASCII表中的数字,如此循环16次,就可以把四位十六进制对应的16位二进制输出。

当然在期间遇到了困难,比如最初没有想到要判断输入是否正确,整个重心只在如何输出,所以在运行时出现了困难,还有不懂2号功能调用后键入的值去哪里了,不知道下面应该怎么写,后来知道是赋给了AL了。

下面程序运行的结果:第三个程序是响铃设计,大概的思路是:首先要键入一个数,用的是1号功能调用,我们采用的是输入一个数的ASCII码,因为这样方便比较,则如果在‘30H-39H’则可以运行下面的程序,如果是回车0DH,或者空格20H则退出程序,不是的话则重新输入,然后讲ASCII码减去2FH则作为响铃的次数,响铃中比较重要的一点是延时,在两次响铃中间有延时,这样才能更加的清楚,为此我们采用在每两次响铃之间进行CX的自循环,设CX=0FFFFH,然后让它循环减1直到为0了则可以进行第二次响铃了,则完成了两次响铃之间的一个延时,响铃的次数由键入的数决定。

在程序设计过程中也遇到了困难,比如刚开始我不知道响铃是用什么来实现的,后来询问同学和查询资料后知道响铃是用MOV AH,02HMOV DL,07H INT 21H 来实现的,增长了我的知识。

其次不知道延时是什么东西,后来在参考资料时时发现了原来是用CX的自循环来实现的,很巧妙的一种方法。

第四个程序是将键盘输入的小写字母转换为大写字母,大概的思路是这样的:首先用1号功能调用接受从键盘输入的字母,然后要判断是否是小写字母,,如果键入为回车0DH,,则退出程序20H如果键入值的ASCII码小于61H,及不是小写字母,则重新输入,如果是小写字母,则将小写字母的ASCII码减去20H,转换为对应大写字母的ASCII码按回车后变成第五个程序是学生成绩名次表的设计,大概的思路是:首先要设置数据段放30个学生的成绩,还有30个学生的排名。

然后调用GETNUM来接受键入的成绩,首先在GETNUM中要判断成绩输入的形式是否正确,如果ASCII码小于30H及小于0了,就显示出错重新输入,如果输入在0-9之间则将输入的值放入DX的高四位,然后在将紧接着的一个数字存到DX的低四位,也就是将一个人的成绩存放到DX中去,然后将DL存到对应数据段存放成绩的位置因为题目的给定,所以存放的首地址是1000H,知道取满30个为止,然后开始判断成绩的高低了,可以首先假设一个AL=00H,然后将学生的成绩与之进行比较,用循环,设CX初值是30,每次将AL与全部其他的比完后减1,如果比AL大的话,就取代AL,并且判断下一个,如果比AL小的话就直接判断下一个,直到30个全部比完为止,将最大的成绩的学号(即对应地址减去首地址得到的数),并将最高成绩清零,是为了下面的比较,将学生总数30减去CX,就是该学生的成绩名次。

然后将学生的名次存入相应名次表中对应学号位置处。

直到全部30个名次全部存完。

然后将名次表输出。

就可以得到每个人的相应的名次了。

当然还遇到了一些困难,就是思路不清晰,不知道具体该怎么做,后来知道名次表和成绩表用不同的数据段来表示,这样就不会混淆了,还有很重要的一点就是不知道比较完一次之后要把最高的那个成绩置零,导致结果出错,后来在参考资料下知道了这一点。

相关文档
最新文档