微机原理课程设计--字符串分类统计

微机原理课程设计--字符串分类统计
微机原理课程设计--字符串分类统计

微机原理课程设计报告

题目:字符串分类统计

学生姓名:周喜民

学号:32

专业班级:计0601

同组姓名: 赵晏龙陈顺

指导教师:范轶彦

设计时间:2010.1.4-2010.1.10 指导老师意见:

评定成绩: 签名: 日期:

目录

一、需求分析 ...................................................................................... 错误!未指定书签。

二、系统设计 ...................................................................................... 错误!未指定书签。

1. 内容 ............................................................................................. 错误!未指定书签。

2.思路............................................................................................ 错误!未指定书签。

三、系统总体框图.......................................................................... 错误!未指定书签。

四、调试分析 ...................................................................................... 错误!未指定书签。

五、实验结果 ...................................................................................... 错误!未指定书签。

六、程序设计 ...................................................................................... 错误!未指定书签。

七、总结 .................................................................................................. 错误!未指定书签。

八、参考文献 ...................................................................................... 错误!未指定书签。

一、需求分析

本程序主要用于,把输入的一串字符分类统计,分别统计出数字、大写字符、小写字符和其他字符的个数。

本程序采用汇编语言编程,定义了宏、比较判断、循环调用、统计等等,非常人性化的把统计的结果显示出来。比如你输入一串数字“12345”,它会显示出你输入的这串数字,并显示数字的个数为5,同时显示其他相应类字符为空。

程序接收用户键入的一行字符(字符长度不大于80个,以回车结束),并把字符,数字,其它字符分类计数,然后将结果存入以,,为名的存储单元中。程序可采用0断将键入的字符直接送至键盘缓冲区,然后逐个取出分类计数。也可采用01H在接收字符后进行分类奇数在存入缓冲区。程序需要进入看计数结果

二、系统设计

1.内容

从键盘输入任意一个字符串,以回车作为结束符并显示,分别统计并显示出其中数字字符、大写字符、小写字符以及其它字符的个数。

2.思路

(1).首先定义两个宏,一个用于输出统计各字符的个数,另一个用于输出字符串。

(2).在数据段中定义各种字符提示信息以便程序清晰明白。

(3).定义数据缓冲区用于存放输入的字符串,定义区用于存放统计的大写字符、小写字符、数字以及其它字符的个数。定义、、以及堆栈用于存放统计的相应字符保存,以便后来输出。

(4).首先调用 10号功能用指定区,将输入的字符串保存到区中。

(5).将1的内容取出来,判断是否为0,如果为0表示没有输入任何字符,则程序跳到(输出提示信息 !),然后显示字符串( a ()?)然后调用1号功能获取您从键盘输入的数,判断是否为Y或y如果是则将程序跳到刚开始

处重新执行,如果不是这两个字符则程序结束。

(6).如果输入了字符串,则调用 2号功能将里的内容输出来(2号功能可以输出$符号而9号功能遇到$符号就终止)。

(7).取字符出来进行比较统计,如果它比30H大且比39H小则为数字,如果比41H大且比5小则为大写字符,如果比61H大且比7小则为小写字符,如果不是这三种情况则为其它字符。

注:存数字个数,存小写字母个数,存大写字母个数,存其它字符个数。

(8).将数字个数、大写字母个数、小写字母个数、其它字符个数依次放入区。

(9).依次输出各字符:

a.判断数字个数是否为0,如果为0则输出提示没有此类数据,否则输出数字个数以及有哪些数字。

b.判断大写字符个数是否为0,如果为0则输出提示没有此类数据,否则输出大写字符的个数以及输入的哪些大写字符。

c.判断小写字符个数是否为0,如果为0则输出提示没有此类数据,否则输出小写字符的个数以及输入的哪些小写字符。

d.判断其它字符个数是否为0,如果为0则输出提示没有此类数据,否则输出其它字符的个数以及输入的哪些其它字符。

(10).然后将程序跳到继续执行,依次下去。

三、系统总体框图

四、调试分析

本程序主要用于,把输入的一串字符分类统计,分别统计出数字、大写字符、小写字符和其他字符的个数。本程序采用汇编语言编程,定义了宏、比较判断、循环调用、统计等等,非常人性化的把统计的结果显示出来。比如你输入一串数字“12345”,它会显示出你输入的这串数字,并显示数字的个数为5,同时显示其他相应类字符为空。

从键盘输入任意一个字符串,以回车作为结束符并显示,分别统计并显示出其中数字字符、大写字符、小写字符以及其它字符的个数。

五、实验结果

1)所有字符都有的时候:

2)其中有字符类型缺少的时候:

3)什么字符都不输入的时候:

六、程序设计

;定义宏,用来输出统计其它字符、数字、大小写

个数

,0

,10

;将余数暂时存放在中

,0

,30h

,2

21H

:

,'0';输出余数

,2

21H

;回车换行

;输出字符串

,9

21H

' :$'

1 ' a :$'

2 ' :$'

3 ' :$'

4 ' :$'

5 ' :$'

6 ' !$'

7 ' !$'

8 ' !$'

9 ' !$'

2 ' :$'

3 ' :$'

4 ' :$'

5 ' :$'

6 ' a ?():$'

7 ' !$'

100 ;定义缓冲区用来存放输入的字符串?

100 (24H)

0,0,'$'

4 (?)

100 (24H),0,0,'$'

100 (24H),0,0,'$'

100 (24H),0,0,'$'

?;用来存放其它字符的个数

1 100 (24H)

:

1:

1 ;显示输入提示信息

,10 ;输入字符串

21H

;回车换行

1,0

;提示输入字符串

1

2

:

,[] ;用于输出缓冲区里的输入字符串 ,2

21H

;回车换行

1 ;将字符串的个数放入

2 ;取字符串的首地址

,0 统计数字个数

,0 统计小写字母个数

,0 统计大写字母个数

,0 统计其他字符的个数

,0

L1: ,[]

,30H

1

,39H

L2

;统计数字字符的个数

L2: ,41H ;统计大写字符的个数

1

,5

L3

[]

L3: ,61H ;统计小写字符的个数

1

,7

1

[]

1: []

;统计其它字符的个数

:

L1

;将统计的个数存放在的存储区

;数字个数放在,大写字符个数放在1

1 ;小写字符个数放在2,其他字符的个数放在3

2

;将其它字符的个数送入保存,以便后来输出(否则9号功能输出遇$则退出) 3

,0 ;判断数字个数如果为0则输出提示符,否则循环输出

2 ;输出数字字符的提示符

,2

:

1[]

,2

21H

,2

2 ;输出数字字符数字的提示符

;输出数字字符的个数

1

:

6

1:

1,0 ;判断大写字符的个数如果为0则输出提示符,否则以字符串形式输出 3 ;输出大写字符的提示符

3 ;输出大写字符数字个数提示符

1 ;输出大写字符的个数

1

:

8

1:

2,0 ;判断小写个数,如果为0则输出提示符,否则以字符串形式输出

4 ;输出小写字符的提示符

4 ;输出小写字符数字个数的提示符

2 ;输出小写字符的个数

1

:

9

1:

,0 ;判断其他字符的个数如果为0则输出提示符,否则循环输出

5 ;输出其它字符的提示符

L4: ;输出其它字符

,[]

,2

21H

L4

5 ;输出其它字符个数的提示符 3 ;输出其它字符的个数

:

7

:

7

:

6

,01H

21H

,'Y'

1

,'y'

1

2:

,4

21H

七、总结

微机原理与接口技术是一门很有趣的课程,任何一个计算机系统都是一个复杂的整体,学习计算机原理是要涉及到整体的每一部分。讨论某一部分原理时又要涉及到其它部分的工作原理。这样一来,不仅不能在短时间内较深入理解计算机的工作原理,而且也很难孤立地理解某一部分的工作原理。所以,在循序渐进的课堂教学过程中,我总是处于“学会了一些新知识,弄清了一些原来保留的问题,又出现了一些新问题”的循环中,直到课程结束时,才把保留的问题基本搞清楚。

学习该门课程知识时,其思维方法也和其它课程不同,该课程偏重于工程思维,具体地说,在了解了微处理器各种芯片的功能和外部特性以后,剩下额是如何将它们用于实际系统中,其创造性劳动在于如何用计算机的有关技术和厂家提供的各种芯片,设计实用的电路和系统,再配上相应的应用程序,完成各种实际应用项目。

这次实验并不是很难,主要的困难来自对程序的理解。功夫不负有心人,经过四个人的合作和努力,我们最后对实验的原理有了清晰的认识。虽然实验台上的很多模块单元没有用到,但是就系统功能来说,我觉得我们做的还是不错的。

这次课设却让我们对实验台有了足够的了解,让我们知道了实验台上各个模块的用法;而且它还让我们对自己动手写程序来控制实验台的运作有了一定的基础。虽然实验台只是一个小型的模拟平台,但是通过对它的学习和操作,我们对有关接口的知识将会有一个更广泛的认识,而且它对我们以后的学习也会有帮助的。

实验中个人的力量是不及群体的力量的,我们四个人分工合作,做事的效率高了很多。虽然有时候会为了一些细节争论不休,但最后得出的总是最好的结论。而且实验也教会我们在团队中要善于与人相处,与人共事,不要一个人解决所有问题。

总之,这次课程设计对于我们有很大的帮助,通过课程设计,我更加深入地理解了,微机原理课程上讲到的各种芯片的功能,以及引脚的作用,同时加深了对于主要芯片的应用的认识,同时在试验室的环境里熟悉了汇编程序的编写过程和运行过程,最后还提高了自己的动手能力。感谢老师的悉心指导。

对课程设计的建议

本次课程设计的三个实验相对都比较简单,而且经过老师的讲解以及实验书上的指导,几乎把我们要用到的程序和实验台电路的接线方法都告诉我们了,所以做起来很容易。但是做完实验,我们对实验台及其上面的各个模块还是不了解。对如何编程控制实验台上各个模块和芯片的运作也没有什么清晰的认识。如果老师对我们实验报告的要求再严格一点,也许同学们会更加自觉地去认真理解程序和实验思路。

八、参考文献

【1】楼顺天、周佳设.《微机原理与接口技术》.第一版.科技出版社,2006 【2】钱晓捷.《新版汇编语言程序设计》.电子工业出版社.2008

【3】葛洪伟、姜浩伟、赵雅群、黄蓓.《汇编语言程序设计》.第一版.中国电力出版社,2007

【4】张雪兰.《汇编语言程序设计教程》.电子工业出版社

微机原理课程设计报告交通灯

WORD格式微机原理课程设计 设计题目交通灯的设计 实验课程名称微机原理 姓名王培培 学号080309069 专业09自动化班级2 指导教师张朝龙 开课学期2011至2012学年上学期

一、实验设计方案 实验名称:交通灯的设计实验时间:2011/12/23 小组合作:是□否?小组成员:无 1、实验目的: 分析实际的十字路口交通灯的亮灭过程,用实验箱上的8255实现交通灯的控制。(红,黄,绿三色灯) 2、实验设备及材料: 微机原理和接口技术实验室的实验箱和电脑设备等。 3、理论依据: 此设计是通过并行接口芯片8255A和8086计算机的硬件连接,以及通过8253延时的方法,来实现十字路口交通灯的模拟控制。 如硬件连接图所示(在后),红灯(RLED),黄灯(YLEDD)和绿灯(GLED)分别接在8255 的A,B,C口的低四位端口,PA0,PA1,PA2,PA3分别接1,2,3,4(南东北西)路口的红灯,B,C口类推。8086工作在最小模式,低八位端口AD0~AD7接到8255和8253的D0~D7,AD8~AD15通过地址锁存器8282,接到三八译码器,译码后分别连到8255和8253的CS片选端。8253的 三个门控端接+5V,CLOCK0接由分频器产生的1MHZ的时钟脉冲,OUT0接到CLOCK1和CLOCK,2 OUT1接到8086的AD18,8086通过检测此端口是否有高电平来判断是否30s定时到。OUT2产生 1MHZ方波通过或门和8255的B口共同控制黄灯的闪烁。8255三个口全部工作在方式0既基本 输入输出方式,红绿灯的转换由软件编程实现。

4、实验方法步骤及注意事项: ○1设计思路 红,黄,绿灯可分别接在8255的A口,B口和C口上,灯的亮灭可直接由8086输出0,1 控制。 设8253各口地址分别为:设8253基地址即通道0地址为04A0H,通道1为04A2H,通道2 为04A4H,命令控制口为04A6H。 黄灯闪烁的频率为1HZ,所以想到由8253产生一个1HZ的方波,8255控制或门打开的时 间,在或门打开的时间内,8253将方波信号输入或门使黄灯闪烁。 由于计数值最大为65535,1MHZ/65536的值远大于2HZ,所以采用两个计数器级联的方 式,8253通道0的clock0输入由分频器产生的1MHZ时钟脉冲,工作在方式3即方波发生器方 式,理论设计输出周期为0.01s的方波。1MHZ的时钟脉冲其重复周期为T=1/1MHZ=1s,因此 通道0的计数初值为10000=2710H。由此方波分别作为clock1和clock2的输入时钟脉冲,所以 通道1和通道2的输入时钟频率为100HZ,通道1作计数器工作在方式1,计数初值3000=BB8H 既30s,计数到则输出一个高电平到8255的PA7口,8255将A口数据输入到8086,8086检测 到高电平既完成30s定时。通道2工作在方式3需输出一个1HZ的方波,通过一个或门和8086 共同控制黄灯的闪烁,因此也是工作在方波发生器方式,其计数初值为100=64H,将黄灯的状态 反馈到8055的端口PB7和PC7,同样输入到8086,8086通过两次检测端口状态可知黄灯的状态 变化,计9次状态变化可完成5次闪烁。 三个通道的门控信号都未用,均接+5V即可。 ○ 2硬件原理及电路图 由于8255A与8086CPU是以低八位数据线相连接的,所以应该是8255A的A1、A 0 线分别与 8086CPU的A2、A线相连,而将8086的 1 A 0 线作为选通信号。如果是按8255A内部地址来看, 则在图中它的地址是PA口地址即(CS+000H),PB口地址为(CS+001H),PC口地址为(CS+002H),

从键盘输入一串字符,分别统计其中的字母(不区分大小写)、数字字符和其他

; 题目名称:分类统计字符 ; 题目来源:https://www.360docs.net/doc/8d478225.html,/question/131013276.html ; 本程序在MASMPlus 1.2集成环境下通过编译,经过调试,运行正确。 Code Segment Assume CS:Code,DS:Code ; -------------------------------------; 功能:显示指定地址(Str_Addr)的字符串 ; 入口: ; Str_Addr=字符串地址(要求在数据段) ; 用法: Output Str_Addr ; 用法举例:Output PromptStr Output MACRO Str_Addr lea dx,Str_Addr mov ah,9 int 21h EndM ; -------------------------------------; 功能:在当前光标位置显示一个字符 ; 入口:dl=要显示的字符 Output_Chr proc Near push ax mov ah,02h int 21h pop ax ret Output_Chr Endp ; -------------------------------------; 功能:显示、输出一个回车、换行 Output_CTLF proc Near push ax push dx mov ah,02h mov dl,0dh int 21h mov dl,0ah int 21h pop dx pop ax ret Output_CTLF Endp ; -------------------------------------; 功能:把AX中的二进制无符号数转换成显式的十进制ASCII码,并送显示屏显示

微机原理课程设计电压报警器实验报告

南通大学电子信息学院 微机原理课程设计 报告书 课题名: 班级: 姓名: 学号: 指导老师: 日期: xxx

目录 1.设计目的 (2) 2.设计内容 (2) 3.设计要求 (2) 4.设计原理 (3) 5.硬件电路图 (3) 6.程序代码 (5) 7.程序及硬件系统调试情况 (19) 8.设计总结与体会 (19)

一、设计目的 课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识,解决实际工程设计和应用问题的能力的重要教学环节。它具有动手、动脑和理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一个重要教学环节。 通过课程设计,要求学生熟悉和掌握微机系统的软件、硬件设计的方法、设计步骤,使学生得到微机开发应用方面的初步训练。让学生独立或集体讨论设计题目的总体设计方案、编程、软件硬件调试、编写设计报告等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,实现由学习知识到应用知识的初步过渡。通过本次课程设计使学生熟练掌握微机系统与接口扩展电路的设计方法,熟练应用8086汇编语言编写应用程序和实际设计中的硬软件调试方法和步骤,熟悉微机系统的硬软件开发工具的使用方法。 通过课程设计实践,不仅要培养学生事实求是和严肃认真的工作态度,培养学生的实际动手能力,检验学生对本门课学习的情况,更要培养学生在实际的工程设计中查阅资料,撰写设计报告表达设计思想和结果的能力。 二、设计内容 设计一个电压报警器,要求采集实验箱提供的0~5V的电压,当输入电压在3V以内,显示电压值,如2.42。当输入电压超过3V,显示ERR,并报警。电压值可在七段数码管显示,点阵广告屏显示或液晶屏显示。报警形式自行设计,

微机原理课程设计报告

微机原理课程设计报告 课程设计是每一个大学生在大学生涯中都不可或缺的, 它使我们在实践中了巩固了所学的知识、在实践中锻炼自己的动手能力,本文就来分享一篇微机原理课程设计报告,希望对大家能有所帮助! 微机原理课程设计报告(一)以前从没有学过关于 汇编语言的知识,起初学起来感觉很有难度。当知道要做课程设计的时候心里面感觉有些害怕和担心,担心自己不会或者做不好。但是当真的要做的时候也只好进自己作大的努力去做,做到自己最好的。 我们在这个过程中有很多自己的感受,我想很多同学都 会和我有一样的感受,那就是感觉汇编语言真的是很神奇,很有意思。我们从开始的担心和害怕渐渐变成了享受,享受着汇编带给我们的快乐。看着自己做出来的东西,心里面的感觉真的很好。虽然我们做的东西都还很简单,但是毕竟是我们自己亲手,呵呵,应该是自己亲闹做出来的。很有成就感。 我想微机原理课程设计和其他课程设计有共同的地方, 那就是不仅加深和巩固了我们的课本知识,而且增强了我们自己动脑,自己动手的能力。但是我想他也有它的独特指出,那就是让我们进入一个神奇的世界,那就是编程。对于很多学过汇编或者其他的类似程序的同学来说,这不算新奇,但是对于我来说真的新奇,很有趣,也是我有更多的兴趣学习微机原理和其他的汇编。 微机原理与接口技术是一门很有趣的课程,任何一个计 算机系统都是一个复杂的整体,学习计算机原理是要涉及到整体的每一部分。讨论某一部分原理时又要涉及到其它部分的工作原理。这样一来,不仅不能在短时间内较深入理解计算机的工作原理,而且也很难孤立地理解某一部分的工作原理。所以,在循序渐进的课堂教学过程中,我总是处于“学会了一些新知识,弄清了一些原来保留的问题,又出现了些新问题”的循环中,直到课程结束时,才把保留的问题基本搞清楚。 学习该门课程知识时,其思维方法也和其它课程不同,

写一个方法,输入一个文件名和一个字符串,统计这个字符串在这个文件中出现的次数

写一个方法,输入一个文件名和一个字符串,统计这个字符串在这个文件中出现的次数 1、用ibatis的原因 2、jdbc、hibernate、ibatis的区别 3、ibatis 的核心配置文件 4、ibatis的核心类 1、在myeclipse加入hibernate环境的全过程是什么? 2、hibernate的核心配置文件是什么及其作用? 3、hibernate的核心类是什么,它们的相互关系是什么?重要的方法是什么? 4、关联: 5、hibernate中的one-to-many或many-to-one中常用的方式是什么? 6、Criteria 的 1、JDBC如何做事务处理? 2、写出几个在Jdbc中常用的接口 3、简述你对Statement,PreparedStatement,CallableStatement 的理解 4、Java中访问数据库的步骤? 5、JDBC中的核心类及其作用是什么? 6、执行存储过程用那一个类,如何操作输出参数?(操作) 8、可能会让 1.列举出10个JAVA语言的优势 2.列举出JAVA中10个面向对象编程的术语 3.列举出JAVA中6个比较常用的包 4.JAVA中的标识符有什么作用和特点 5.JAVA中的关键字有什么特点,列举出至少20个关键字 6.JAVA中数据类型如何分类? 7.JAVA中运算符的分类及举例 8.super,th 1、java中有几种类型的流?JDK为每种类型的流提供了一些抽

象类以供继承,请说出他们分别是哪些类?2、启动一个线程是用run()还是start()? 3、线程的基本概念、线程的基本状态以及状态之间的关系4、多线程有几种实现方法,都是什么?同步有几种实现方法,都是什 1. super()与this()的区别? 2. 作用域public,protected,private,以及不写时的区别? 3. 编程输出如下图形。 4. JAVA的事件委托机制和垃圾回收机制 5. 在JAVA中,如何跳出当前的多重嵌套循环? 6. 什么是java序列化,如何实现java 序列化?(写一个实例) 7. 一

微机原理课程设计报告

微型计算机技术课程设计 指导教师: 班级: 姓名: 学号: 班内序号: 课设日期: _________________________

目录 一、课程设计题目................. 错误!未定义书签。 二、设计目的..................... 错误!未定义书签。 三、设计内容..................... 错误!未定义书签。 四、设计所需器材与工具 (3) 五、设计思路..................... 错误!未定义书签。 六、设计步骤(含流程图和代码) ..... 错误!未定义书签。 七、课程设计小结 (36)

一、课程设计题目:点阵显示系统电路及程序设计 利用《汇编语言与微型计算机技术》课程中所学的可编程接口芯片8253、8255A、8259设计一个基于微机控制的点阵显示系统。 二、设计目的 1.通过本设计,使学生综合运用《汇编语言与微型计算机技术》、《数字电子技术》等课程的内容,为今后从事计算机检测与控制工作奠定一定的基础。 2.掌握接口芯片8253、8255A、8259等可编程器件、译码器74LS138、8路同相三态双向总线收发器74LS245、点阵显示器件的使用。 3.学会用汇编语言编写一个较完整的实用程序。 4.掌握微型计算机技术应用开发的全过程,包括需求分析、原理图设计、元器件选用、布线、编程、调试、撰写报告等步骤。 三、设计内容 1.点阵显示系统启动后的初始状态 在计算机显示器上出现菜单: dot matrix display system 1.←left shift display 2.↑up shift display 3.s stop 4.Esc Exit 2.点阵显示系统运行状态 按计算机光标←键,点阵逐列向左移动并显示:“微型计算机技术课程设计,点阵显示系统,计科11302班,陈嘉敏,彭晓”。 按计算机光标↑键,点阵逐行向上移动并显示:“微型计算机技术课程设计,点阵显示系统,计科11302班,陈嘉敏,彭晓”。 按计算机光标s键,点阵停止移动并显示当前字符。 3.结束程序运行状态 按计算机Esc键,结束点阵显示系统运行状态并显示“停”。 四.设计所需器材与工具 1.一块实验面包板(内含时钟信号1MHz或2MHz)。 2.可编程芯片8253、8255、74LS245、74LS138各一片,16×16点阵显示器件一片。

汇编实验三:分类统计字符个数

一、实验目的 学习用汇编语言编写设计分支循环程序 二、实验要求 程序接收用户键入的一行字符(字符个数不超过80个,该字符串用回车符结束),并按字母、数字及其它字符分类计数,然后将结果存入以letter、digit和other为名的存储单元中。 三、实验提示 (1)程序可0AH功能调用把键入字符直接送到缓冲区中,然后再逐个取出分类计数。也可01H功能调用在接收字符后先分类计数再存入缓冲区中。 (2)程序需要进入debug运行并查看计数结果。 四、实验程序 datarea segment string db 80 db ? db 80 dup(?);定义字符串string,长度为80 letter db 0 ;定义存储单元letter digit db 0 ;定义存储单元digit other db 0 ;定义存储单元other datarea ends case segment main proc far assume cs:case, ds:datarea start: mov ax, datarea mov ds, ax lea dx, string mov ah, 0ah int 21h lea di, string + 2 ;输入一行字符,依次将每个字符存入字符串string中 sub ch,ch mov cl, string + 1 add dx, 2 check: ;将每个字符进行分类 mov al, [di] cmp al, 0dh

je exit ;字符串以回车符结束,若进行分类的字符是回车符,则跳转至exit,退出程序 cmp al, 30h ;与ASCII码中的0,即30h比较 jb o ;小于30h的,为其他类型字符,则跳转至o,在other块进行操作 cmp al, 39h ;与ASCII码中的9,即39h比较 jna d ;不大于39h的,结合不小于30h的,则跳转至d,在digit块进行操作 ja loro ;剩下的为字母或者其他类型 loro: cmp al, 41h ;与ASCII码中的A,即41h比较 jb o ;小于41h的,结合大于39h的,则跳转至o,在other块进行操作 cmp al, 7ah ;与ASCII码中的z,即7ah比较 ja o ;大于7ah的,则条钻至o,在other块进行操作 cmp al, 5ah ;与ASCII码中的Z,即5ah比较 jna l ;不大于5ah的,结合大于41h的,则跳转至l,在letter块进行操作 cmp al, 61h ;与ASCII码中的a,即61h比较 jnb l ;不小于61h的,结合不大于7ah的,则跳转至l,在letter块进行操作 jb o ;小于61h的,结合大于5ah的,则跳转至o,在other块进行操作 l: inc letter ;属于letter类型,则letter增1 inc di jmp check ;返回继续比较下一个字符 d: inc digit ;属于digit类型,则digit增1 inc di jmp check o: inc other ;属于other类型,则other增1 inc di jmp check exit: ;输出letter,digit,other类型的计数结果 mov ah, 02 mov dl, 0dh int 21h mov dl, 0ah int 21h mov dl, 4ch int 21h mov dl, 3ah int 21h mov dl, 0 int 21h xor ax, ax

2016年微机原理课程设计指导书

微机原理课程设计 指 导 书 计算机科学与技术学院计算机系统教研室 二零一六年五月

目录 1 课程设计的目的和任务 (1) 2 课程设计指导及要求 (1) 3 课程设计的主要步骤 (1) 3.1 总体设计 (2) 3.2 硬件设计 (2) 3.3 软件设计 (2) 3.4 软、硬件联调 (2) 4 课程设计报告内容及格式要求 (2) 5 进度安排 (3) 6 课程设计的考核方法及成绩评定 (3) 7 课程设计题目 (3) 8 主要参考资料 (5)

1 课程设计的目的和任务 课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识,解决实际工程设计和应用问题的能力的重要教学环节。它具有动手、动脑和理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一个重要教学环节。 通过课程设计,要求学生熟悉和掌握微机系统的软件、硬件设计的方法、设计步骤,使学生得到微机开发应用方面的初步训练。让学生独立或集体讨论设计题目的总体设计方案、编程、软件硬件调试、编写设计报告等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,实现由学习知识到应用知识的初步过渡。通过本次课程设计使学生熟练掌握微机系统与接口扩展电路的设计方法,熟练应用8086汇编语言编写应用程序和实际设计中的硬软件调试方法和步骤,熟悉微机系统的硬软件开发工具的使用方法。 通过课程设计实践,不仅要培养学生事实求是和严肃认真的工作态度,培养学生的实际动手能力,检验学生对本门课学习的情况,更要培养学生在实际的工程设计中查阅资料,撰写设计报告表达设计思想和结果的能力。 2 课程设计指导及要求 在课程设计时,1人1题,同批次同学中选择同一题的人数不超过3人。在教师指导下,可以相互讨论,但设计报告由学生独立完成,不得互相抄袭。教师的主导作用主要在于指明设计思路,启发学生独立设计的思路,解答疑难问题和按设计进度进行阶段审查。学生必须发挥自身学习的主动性和能动性,主动思考问题、分析问题和解决问题,而不应处处被动地依赖指导老师。同学应积极主动的提出问题、解决问题、讨论问题,互相帮助和启发。 学生在设计中可以引用所需的参考资料,避免重复工作,加快设计进程,但必须和题目的要求相符合,保证设计的正确。指导教师要引导学生学会掌握和使用各种已有的技术资料,不能盲目地、机械地抄袭资料,必须具体分析,使设计质量和设计能力都获得提高。学生要在老师的指导下制定好自己各环节的详细设计进程计划,按给定的时间计划保质保量的完成个阶段的设计任务。设计中可边设计,边修改,软件设计与硬件设计可交替进行,问题答疑与调试和方案修改相结合,提高设计的效率,保证按时完成设计工作并交出合格的设计报告。 3 课程设计的主要步骤 课程设计分为硬件设计和软件设计两个部分,其设计过程可以归纳为以下所述的四个步骤:

汇编与微机原理课程设计报告

微机接口课程设计报告 (题目:模拟自动门) 指导老师郭兰英 班级2015240204

目录 一概述 (1) 1.1 课程设计名称 (1) 1.2 课程设计要求 (1) 1.3 课程设计目的 (1) 二设计思想 (1) 三实施方案 (2) 3.1 获得传感器和“门”的状态 (2) 3.2 驱动步进电机和点阵模块 (2) 3.3 实现硬件延时 (3) 四硬件原理 (3) 4.1 中断控制器8259 (4) 4.2并行接口8255 (4) 4.3 定时/计数器8254 (5) 4.4 点阵LED显示屏 (5) 4.5 步进电机 (6) 4.6 红外距离传感器 (7) 五软件流程 (8) 六程序运行结果及分析 (11) 6.1 开门状态 (11) 6.2 关门状态 (12) 6.3 关门操作进行时中断到开门操作 (14)

6.4特殊状态 (15) 七个人感想 (16) 八附录 (18)

一、概述 1.1课程设计名称 模拟自动门 1.2课程设计要求 1)用汇编语言编程完成硬件接口功能设计。 2)硬件电路基于80x86微机接口。 3)程序功能包含:步进电机转动、点阵显示开关门、传感器检测是否有人、8254延时。 4)传感器检测有人时开门,门全开后延时几秒关门,若关门时检测到有人,立刻开门。 1.3课程设计目的 通过本课程设计,让学生对微机系统有一个较面的理解,对典型数字接口电路的应用技术有一个较深入的掌握,并对应用系统进行硬件原理和软件编程进行分析、设计和调试,达到基本掌握简单微型计算机应用系统软硬件的设计方法,提高项目开发能力的目的。要求同学分组完成课题,写出课程设计说明书,画出电路原理图,说明工作原理,编写设计程序及程序流程图。 二、设计思想 本程序主要功能是模拟商场等公共场所的自动门,实现有物体靠近并被传感器检测到时发生一系列变化的效果,模拟实现开门关门的功能。 为了尽量模拟真实场景下的自动门状态变化,本程序主要可以实现以下功能: 1、当传感器可检测范围内检测到物体,并且“门”为“关”的状态,立即“打开门”,即用一系列的硬件动作模拟自动门打开的动作和状态。 2、当“门”完全打开后一段时间后,传感器范围内检测不到物体时,立即“关闭门”, 用一系列的硬件动作模拟自动门关闭的动作和状态。

汇编分类统计字符个数

分类统计字符个数 一、实验目的 通过编程实现字符进行分类统计。 利用DOS功能调用INT 21H的10(0Ah)号功能,掌握进行键盘输入字符串的方法以及数据区设置。 掌握8086指令: CMP、JB、JA、SHL、INC、LEA、INT、JNZ、SCASB、LOOPE/LOOPNE等。 二、实验内容 1、编写一个程序实现将数据段中存储在STRING处到NUM处的字符串进行分类统计,然后将结果存入以letter、digit和other为名的存储单元中。查找字符串STRING中是否有空格,如有找出第一个出现的位置(先用十六进制显示,后修改为十进制显示),否则输出N。 2、修改前述1的程序,实现从键盘输入一个以回车键作为结束符的字符串(字符个数不超过80个),存入BUF中,分类统计BUF中字符串,将结果存入以letter、digit和other为名的存储单元中,屏幕输出大小写字母个数、数字个数和其它字符个数,并查找字符串BUF中是否有空格,如有找出第一个出现的位置(用十进制显示),否则输出N。(对有余力的同学) 实验结果: DEBUG 调试并查看结果的正确性。 对存储区STRING的内容“12ABCDE#!@Y(78)=(1).” 屏幕显示: N 对存储区STRING的内容“12ABCD E#! @Y(78)=(1).” 屏幕显示: Place=7 对第2部分,如键盘输入 12ABCDE# 3456789143!@Y(78)=(1).回车 输出结果: Letter=6 Digit=15 Other=9 Place=9 三、分析与体会 本次实验我花了较长的时间来完成。初略的程序花了5个多小时完成。后来遇到转换为十进制的时候就卡住了。后来在第六周周三的时候听了课以后才会做。

微机原理课程设计说明书

微机原理课程设计说明书 题目 数据段里有一个N个字的数组A,利用冒泡排序法最数组进行从小到大的排序,并输出结果。 要求:读出数据段中存放的数组A;换行显示换行后的数组A 题目分析 数据段为N个字,从而了解到该数据类型为双字节,且数据段中数据个数未知。要求对该数组进行从小到大的排序,且要求用冒泡法进行。数据段中的数组A已经给定,无需输入,但是要求将排序前后数组A显示出来,且要求换行显示。 软件流程图

流程图

设计思路说明 首先通过调用自定义子程序printf将数组A中的数据显示出来,然后在运用冒泡法对数组中的数据进行排序,冒泡法排序的总思路是,首先从数组A中的第一个元素开始,一次对相邻的的两个元素进行比较,调整。使前一个元素不大于后一个元素,将素有元素比较完之后,最大的元素排到了最后;然后,除掉最后一个元素之外的元素依上方法再次进行比较,得到次大的元素排在后面;如此重复,直至完成就实现了元素的从小到大的排序。同时在每一轮的依次比较时,我还设置了一个检测标识,如果哪一轮比较时没有进行依次调整,前面的元素都不大于后面的元素。直接结束排序。最后再次调用自定义子程序printf将排序后的数组A显示出来。 程序清单 主程序开始部分 DATAS SEGMENT arrary dw 3,2,-1,5,7,4,6,100,895;预定义需排序数组 len dw ($-arrary)/2 flag db ?;交换标志,为1表示发生交换 c10 dw 10 ;此处输入数据段代码 DATAS ENDS STACKS SEGMENT ;此处输入堆栈段代码 STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS START: MOV AX,DATAS MOV DS,AX call print;调用子程序打印数组 冒泡法排序程序 l_out:lea bx,arrary;外层循环,flag==1时进入

微机原理课程设计实验报告DOC

河北科技大学 课程设计报告 学生姓名:学号: 专业班级: 课程名称: 学年学期: 指导教师: 年月

课程设计成绩评定表 学生姓名学号成绩 专业班级起止时间2011.12.24—2012.11.28 设计题目字符串动画显示 指 导 教 师 评 语 指导教师: 年月日

目录 一、课程设计的目的 (1) 二、设计题目 (1) 三、设计内容要求 (2) 四、设计成员及分工 (2) 五、课程设计的主要步骤 (2) 六、课程设计原理及方案 (3) 七、实现方法 (3) 八、实施结果 (8) 九、总结 (8) 十、体会感受 (8)

一、课程设计的目的 课程设计是以自己动手动脑,亲手设计与调试的。它将基本技能训练、基本工艺知识和创新启蒙有机结合,培养我们的实践和创新能力。课程设计的意义,不仅仅是让我们把所学的理论知识与实践相结合起来,提高自己的实际动手能力和独立思考的能力。作为信息时代的大学生,基本的动手能力是一切工作和创造的基础和必要条件。 课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识解决实际工程设计和应用问题的能力的重要教学环节,它具有动手、动脑和理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一种较好方法。 《微机原理及应用》是一门应用性、综合性、实践性较强的课程,没有实际的有针对性的设计环节,学生就不能很好的理解和掌握所学的技术知识,更缺乏解决实际问题的能力。所以通过有针对性的课程设计,使学生学会系统地综合运用所学的理论知识,提高学生在微机应用方面的开发与设计本领,系统的掌握微机硬软件设计方法。 通过课程设计实践,不仅要培养学生的实际动手能力,检验学生对本门课学习的情况,更要培养学生在实际的工程设计中查阅专业资料、工具书或参考书,掌握工程设计手段和软件工具,并能以图纸和说明书等表达设计思想和结果的能力。培养学生事实求是和严肃认真的工作态度。 通过设计过程,要求学生熟悉和掌握微机系统的软件设计的方法、设计步骤,使学生得到微机开发应用方面的初步训练。让学生独立或集体讨论设计题目的系统方案论证设计、编程、软件调试、查阅资料、编写说明书等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,实现由学习知识到应用知识的初步过渡。通过本次课程设计使学生熟练的熟练掌握微机系统的设计方法,熟练应用8086汇编语言编写应用程序和实际设计中的软件调试方法和步骤,熟悉微机系统的软件开发工具的使用方法。 二、设计题目

数量分析方法模拟试题三 (1)

商务统计方法模拟试题三 一、判断题 1、定义数据结构是在数据视窗中进行的。() 2、在进行二项分布检验时,要求检验变量必须是二值变量。() 3、Kendall相关系数适用于度量定类变量间的线性相关关系。() 4、非参数检验要求样本来自的总体服从或近似服从正态分布。() 5、配对样本中个案个数一定是相同的。() 6、在SPSS数据文件中,一行代表一个个案(case)。() 7、单样本t检验也可用于对总体比率进行检验。() 8、在进行方差分析时,若总方差主要是由组内方差引起的,则会拒绝原假设。() 9、二值变量序列中,游程数最小为1.() 10、变量值越大,对应的秩就会越小。() 二、单项选择题 1、SPSS数据文件默认的扩展名() A、.sps B、.spo C、.sav D、.rtf 2、在SPSS的运行方式中,最常见,对初学者最适用的方式是() A、程序运行方式 B、完全窗口菜单方式 C、混合运行方式 D、联机帮助方式 3、面对100份调查问卷,在进行SPSS数据输入时,应采用() A、原始数据的组织方式 B、计数数据的组织形式 4、下列关于变量名的取名规则的说法,不正确的是() A、变量名的字符数不能超过8个 B、变量名不区分大小写字母 C、“3G”是一个合法的变量名 D、变量名可以以汉字开头 5、在定义数据结构时,Label是指定义() A、变量名 B、变量名标签 C、变量值标签 D、变量类型 6、“年龄”这个变量属于() A、定类型变量 B、定序型变量 C、定距型变量 7、欲插入一个个案,应选择的一级菜单是() A、File B、Edit C、View D、Data 8、在横向合并时,[Excluded V ariables]框中的变量是() A、两个待合并的数据文件中的所有变量 B、合并后新的数据文件中包括的变量 C、合并后新的数据文件中不包括的变量 D、第二个待合并的数据文件中的变量 9、如果只想对收入大于5000或者职称不小于4级的职工进行计算,应输入的条件表达式是() A、收入>5000or 职称>4 B、收入>5000and 职称>4 C、收入>5000 or not(职称>4) D、收入>5000 or not(职称<4) 10、希望从全部231个个案中随机选出32个个案,应采用的选取方式是() A、指定条件选取 B、近似选取 C、精确选取 D、过滤变量选取 11、分类汇总中,默认计算的是各分类组的()

微机原理课程设计报告-数字时钟的实现(附代码)

合肥工业大学 计算机与信息学院 课程设计 课程:微机原理与接口技术设计专业班级:计算机科学与技术x班学号: 姓名:

一、设计题目及要求: 【课题6】数字时钟 1.通过8253 定时器作产生秒脉冲定时中断。在中断服务程序中实现秒、分、小时的进位(24小时制)。 2.在七段数码管上显示当前的时分秒(例如,12 点10 分40 秒显示为121040)。 3.按“C”可设置时钟的时间当前值(对准时间)。 二、设计思想: 总体思想: 1、功能概述: 实验箱连线: 本实验建立在Dais实验箱基础上完成的基本连线及程序如下: 138译码器: A,B,C,D,分别连接A2,A3,A4,GS; y0连接8253的CS片选信号; y1连接8259的CS片选信号; 8253连线: 分频信号T2接8253的CLK0; 8253的OUT0接8259的IR7; 8253的gate信号接+5V; 8259连线: 8259的数据线接入数据总线;

本程序包括显示模块,键盘扫描模块,时间计数模块,设置模块等几个模块, (1)程序运行后,LED显示000000初始值,并且开始计数 (2)按C键进行设置初始时间,考虑到第一个数只能是0,1,2,当第一个数显示2时第二个数只能显示0~4,同理下面各位应满足时钟数值的合理的取值; (3)在手动输入初始值时,按D键进行回退1位修改已设置值,连续按D键可以全部进行删除修改。 2、主程序设计 主程序中完成通过调用子程序完成对8253及8259的初始化,对8259进行中断设置。主要在显示子程序和键盘子处理程序之间不断循环,8253每一秒给8259一个刺激,当8259接受到刺激后会给CPU一个中断请求,CPU会转去执行中断子程序,而中断子程序设置成时间计数加,即完成电子表的整体设计。详细流程图见图三-1。 3、LED显示子程序设计 本程序显示部分用了6个共阳极LED作为显示管,显示程序要做到每送一次段码就送一次位码,每送一次位码后,将位码中的0右移1位作为下次的位码,从而可以实现从左到右使6个LED依次显示出相应的数字。虽然CPU每隔一定时间便执行显示程序,但只要这个时间段不太长,由于人眼的视觉作用,就可以在6个LED上同时见到数字显示。 4、键盘扫描子程序设计 本程序需要用键盘对时间的初始值进行设置,因此对键盘扫描的子程序需要满足的功能如下: 判断是否是C键,若不是就返回至主程序,若是C键就开始对时间初始值进行设置,同时因注意到第一个值不可以超过2,第一个数是2时第二数不能超过4,余下的同理要满足时间数值的取值范围呢,若不是合法输入不予反应继续等待输入。当遇到输入数值错误时可以按下D键进行删除一位重新设置;当6位初始值全部设置成功后,电子表将自动开始走表。 5、时间运算子程序设计 该子程序的主要功能是对时、分、秒的运算,并把运算出的最终结果存到事先已经开辟

微机原理课程设计心得体会3篇

微机原理课程设计心得体会3篇课程设计是对课程的各个方面做出规划和安排,是连接课程基本理念和课程实践活动的桥梁。下面是为大家带来的微机原理课程设计心得体会,希望可以帮助大家。 微机原理课程设计心得体会范文1: 计算机网络的设计是一个要求动手能力很强的一门实践课程,在课程设计期间我努力将自己以前所学的理论知识向实践方面转化,尽量做到理论与实践相结合,在课程设计期间能够遵守纪律规章,不迟到、早退,认真完成老师布置的任务,同时也发现了自己的许多不足之处。 在课程设计过程中,我一共完成了11个实验,分别是1.制作直通电缆和交叉UTP、2.交换机Console口和Telnet配置、3.交换机端口和常规配置、4.虚拟局域网VLAN配置、5.路由器Console口Telnet 配置方法和接口配置、6.路由器静态路由配置、7单臂路由配置、8.动态路由协议配置、9.PPP协议配置、10路由器访问控制表(ACL)、11.网络地址转换(NAT)。 在制作直通电缆和交换UTP的实验中,我起初不能完全按照要求来剪切电缆,导致连接不通,后来在同学的帮助下,终于将实验完成。 在做到单臂路由配置和动态路由协议配置的实验,由于自身的基础知识掌握不牢,忘掉了一些理论知识,在重新翻阅课本和老师的指导之下,也成功的完成了试验。

从抽象的理论回到了丰富的实践创造,细致的了解了计算机网络连接的的全过程,认真学习了各种配置方法,并掌握了利用虚拟环境配置的方法,我利用此次难得的机会,努力完成实验,严格要求自己,认真学习计算机网络的基础理论,学习网络电缆的制作等知识,利用空余时间认真学习一些课本内容以外的相关知识,掌握了一些基本的实践技能。 课程设计是培养我们综合运用所学知识,发现、提出、分析、解决问题的一个过程,是对我们所学知识及综合能力的一次考察。随着科学技术日新月异的不断发展,计算机网络也在不断的变化发展当中,这就要求我们用相应的知识来武装自己,夯实基础,为将来走向工作岗位,贡献社会做好充分的准备。 微机原理课程设计心得体会范文2: "微机原理与系统设计" 作为电子信息类本科生教学的主要基础课之一,课程紧密结合电子信息类的专业特点,围绕微型计算机原理和应用主题,以Intelx86CPU为主线,系统介绍微型计算机的基本知识,基本组成,体系结构和工作模式,从而使学生能较清楚地了解微机的结构与工作流程,建立起系统的概念。 这次微机原理课程设计历时两个星期,在整整两星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。以前在上课的时候,老师经常强调在写一个程序的时候,一定要事先把程序原理方框图化出来,但是我开始总觉得这样做没必

微机课程方案字符串分类统计

个人资料整理仅限学习使用 课程设计报告微机原理目:题字符串分类统计周喜民学生姓名: 32 学号:专业班级:0601计陈顺赵晏龙同组姓名: 指导教师:范轶彦2018.1.4-2018.1.10 设计时间:

个人资料整理仅限学习使用 目录 2一、需求分析 3二、系统设计 31. 内容 3.思路2

5三、系统总体框图 6四、调试分析 6五、实验结果 7六、程序设计 13七、总结 14八、参考文献 个人资料整理仅限学习使用 一、需求分析 本程序主要用于,把输入的一串字符分类统计,分别统计出数字、大写字符、小写字符和其他字符的个数。 本程序采用汇编语言编程,定义了宏、比较判断、循环调用、统计等等,非常人性化的把统计的结果显示出来。比如你输入一串数字“12345”,它会显示出你输入的这串数字,并显示数字的个数为5,同时显示其他相应类字符为空。

程序接收用户键入的一行字符<字符长度不大于80个,以回车结束),并把字符,数字,其它字符分类计数,然后将结果存入以Letter,Digit,Other为名的存储单元中。程序可采用0AH断将键入的字符直接送至键盘缓冲区,然后逐个取出分类计数。也可采用01H在接收字符后进行分类奇数在存入缓冲区。程序需要进入DEBUG看计数结果 二、系统设计 1.内容 从键盘输入任意一个字符串,以回车作为结束符并显示,分别统计并显示出其中数字字符、大写字符、小写字符以及其它字符的个数。 .思路2. 个人资料整理仅限学习使用 <1).首先定义两个宏,一个用于输出统计各字符的个数,另一个用于输出字符串。 <2).在数据段中定义各种字符提示信息以便程序清晰明白。 <3).定义数据缓冲区用于存放输入的字符串,定义NUM区用于存放统计的大写字符、小写字符、数字以及其它字符的个数。定义OTHERCHAR、BIGCHAR、SMALLCHAR 以及堆栈用于存放统计的相应字符保存,以便后来输出。 <4).首先调用DOS 10号功能用DX指定BUF区,将输入的字符串保存到BUF区中。 <5).将BUF+1的内容取出来,判断是否为0,如果为0表示没有输入任何字符,则程序跳到NEXTLAP<输出提示信息You do not input any string!),然后显示字符串?)然后调用DOS 1号功能获取您从键盘输入的数,判断是否为Y或y如果是则将程序跳到刚开始处重新执行,如果不是这两个字符则程序结束。 <6).如果输入了字符串,则调用DOS 2号功能将BUF里的内容输出来<2号功能可以输出$符号而9号功能遇到$符号就终止)。 <7).取字符出来进行比较统计,如果它比30H大且比39H小则为数字,如果比41H大且比5AH小则为大写字符,如果比61H大且比7AH小则为小写字符,如果不是这三种情况则为其它字符。 注:DX存数字个数,BX存小写字母个数,DI存大写字母个数,BP存其它字符个数。 <8).将数字个数、大写字母个数、小写字母个数、其它字符个数依次放入NUM 区。 <9).依次输出各字符: a.判断数字个数是否为0,如果为0则输出提示没有此类数据,否则输出数

8086.8088微机原理课程设计

8086/8088微机原理课程设计 1、课程设计说明 “微机原理与接口技术课程设计”主要是测试学生的8086/8088系统输入输出技术应用能力、数字电路应用能力和程序设计能力。 设计题目中综合了《数字逻辑》、《微机原理与接口技术》和《程序设计基础》等课程中的相关知识点。特别是电气工程系各专业学习了《模拟电子》、《传感器技术》、《单片机技术》等课程,给题目的扩展和实际应用提供了基础。本课程的课程设计实际上是一个综合性应用的设计和制作。 这里只给出了部分课程设计的题目,主要和接口电路有关,每个题目的实现方式和扩展空间都很大,指导教师可根据学生的具体情况决定设计题目的内容和设计量。纯汇编语言软件的设计未在这里列出。 欢迎学生自拟题目,经指导教师审核其难易程度和确定所用器材,优先选用。 2、课程设计计分办法 课程设计的计分由课设题目(60)、课设报告(20)、考勤(20)三部分组成。 一、题目的选择 设计题目分为星级制(★),根据选择题目的难易程度确定成绩,以百分制计算,按比例计入总成绩。要根据个人情况合理选择题目,不可多组选择同一题目。 1、无星为最简题目,做完多个题目仅记分为及格(69分及以下)。 2、1星(★)为简单题目,做完1个题目记分为良(70~89分)。 3、2星(★★)为较难题目,做完1个题目记分优(90~100分)。 4、星级题目多做可提高分值。 5、课设一般为分组实施,主要设计者记原星级分值,辅助者减1星。 6.、未完成设计者视设计程度减星计分。 7、无星题目可单人完成,但不选题目者记0分。 二、报告要求 课设报告应按规定格式书写,并按时上交。报告原则上要求手工书写,如要打印必须是独立版本,遇雷同课设报告均不计入总成绩。 三、考勤 考勤。点名一次未到扣5分,5次以上记0分。

微机原理课程设计

微机原理与接口技术课程设计报告 设计课题:电动机速度控制器 专业班级:测控技术与仪器 学生姓名:jcl 学生学号:2008 指导教师:ddd 成绩: 二○一一年一月十一日

电动机速度控制器 一、设计目的 1.微机原理与接口技术是一门实践性很强的课程。课程设计教学环节十分重要。通过课程设计,使用微处理器芯片及其它典型的接口芯片,设计微处理器应用的典型接口电路,加深对微处理器、典型接口芯片特性的理解,掌握微处理器接口电路设计的初步方法,并进行一定的编程训练,加强微机应用的工程实践能力; 2.掌握接口芯片8255A和DAC0832的工作原理,熟悉8255A可编程并行口的使用方法,会写8255A 的控制字以及掌握三种工作方式的特点并会使用;会根据DAC0832的输入输出器和DAC寄存器的不同控制方法,选择不同的工作方式:单缓冲方式、双缓冲方式、直通方式。 3.学会自己独立设计电路,熟悉设计的过程,学会利用各种资源。 二、设计要求 利用开关量来实现对输出电压的定量控制,从而控制电动机的转速。 1、通过8255A工作在方式0的基本输入输出功能,输入一个八位的二进制数,同时在利用DAC0832的模数转换功能将其转换成电压信号,从而对输出的电压大小实现量控。 2、用八个开关的输入作为八位二进制数输入,CPU从8255A中读取放在AL中;然后将AL中的数据送入DAC0832中转换成模拟量,从而完成对电压的量控输出,即控制电动机的转速。 3、对于两个接口芯片的操作是用CPU的地址总线通过译码器选中其中一个,从而对其进行读写;DAC0832的工作方式是单缓冲方式。 4、8255A方式选择控制字如下图所示:

相关文档
最新文档