微机原理课程设计题1.docx
- 文档编号:7021605
- 上传时间:2023-05-11
- 格式:DOCX
- 页数:11
- 大小:43.45KB
微机原理课程设计题1.docx
《微机原理课程设计题1.docx》由会员分享,可在线阅读,更多相关《微机原理课程设计题1.docx(11页珍藏版)》请在冰点文库上搜索。
微机原理课程设计题1
微机原理课程设计题目——软件部分
软件程序设计两个班的同学一起选,每人一个题目,不能重复。
题目1、根据键盘输入的一个数字显示相应的数据螺旋方阵。
如输入4,则显示:
1234
1213145
1116156
10987
共需要显示4^2=16个数字。
要求:
1、根据键盘输入的数字(3-20),显示相应的数据方阵。
2、画出设计思路流程图,编写相应程序。
题目2通过键盘输入字母,然后显示相应的图形。
要求:
输入L,之后再输入两个点的坐标值,显示一段直线;
输入R,再输入两个点的坐标值,显示一个矩形框。
题目3在屏幕上接收一串带数字、字母及其它字符的字符串,然后统计其中数字、字母的个数,并显示出来。
题目4编写一个汇编程序,将键盘输入的小写字母用大写显示出来.
若输入的是非字符,显示NONCHAR。
题目5编程序实现十进制数与十六进制数之间的相互转换。
1、从键盘输入一个十进制数,转换成十六进制数,显示出来。
要求:
需要检测输入一个规范的十进制数。
2、键盘输入一个十六进制数,转换成十进制数,显示出来。
要求:
需要检测输入一个规范的十六进制数。
题目6简易信息检索系统。
在数据区定义msg0-msg9共十条信息,然后从键盘接收0-9的数字,显示相应的信息。
题目7 人名排序程序。
从键盘接收十个人名,人名由四个字母构成。
按字母上升次序显示所输入的人名,每一个人名占一行。
题目8 在显示屏中央开一个窗口显示自已的名字(以拼音显示)。
要求:
窗口的大小(行列的象素数,可由用户输入两个数字调整)
题目9计算字符长度
提示输入字符串;输入任意字符串string,点击Enter结束输入;输出字符串string的长度;点击Enter程序退出。
题目10字符串大小写字母相互转换
(1)提示输入字符串;
(2)输入任意字符串string,点击Enter结束输入;将字符串string中的大写字母转换为小写字母输出;点击Enter程序退出;
(3)输入任意字符串string,点击Enter结束输入;将字符串string中的小写字母转换为大写字母输出;点击Enter程序退出。
题目11计算字符串中某个字符出现次数
提示输入字符串;输入任意字符串string,点击Enter结束输入;提示输入字符;输入任意字符ch,点击Enter结束输入输出字符串string中字符ch的出现次数点击Enter程序退出。
题目12去除字符串中的某个字符
提示输入字符串;输入任意字符串string,点击Enter结束输入;提示输入字符;输入任意字符ch,点击Enter结束输入将字符串中字符ch去除,输出变化后的字符串string2点击Enter程序退出。
题目13从字符串中截取指定长度的字符子串
提示输入字符串;输入任意字符串string,点击Enter结束输入;提示输入数字;输入任意数字int,点击Enter结束输入;截取string的前int位输出;点击Enter程序退出。
题目14将字符串补齐为某个特定长度
提示输入字符串;输入任意字符串string,点击Enter结束输入;提示输入数字;输入任意数字int,点击Enter结束输入;提示输入字符;输入任意字符ch,点击Enter结束输入如果字符串string长度大于int,则截取string的前int位输出;如果字符串string长度小于int,则在string后面添加字符ch,直至使字符串长度等于int;如果字符串string长度等于int,则直接输出字符串。
点击Enter程序退出。
题目15字符游戏
随机显示字符ch,等待用户输入,如果输入字符与ch一致,则随机显示下一个字符ch2;否则显示“输入错误”;如此循环;输入Enter结束。
题目16查找字符串中给定字符首次出现的位置
要求:
字符串给定;从键盘输入单个字符,Enter键结束并显示该字符所处的位置。
题目17编密码
按一下规律编码:
字母A变为E,a变为e,即变成其后的第4个字母,W变为A,Y变为C,Z变为D,非字母不变。
如输入“China”变为“Glmre”。
要求:
提示输入一字符串;键盘输入,Enter键结束输入,并换行显示结果。
题目18数组排序
数据段里有一个N个字的数组A,利用冒泡排序法对数组进行从大到小的排序,并输出结果。
要求:
读出数据段中存放的数组A;换行显示排序后的数组A。
题目19分类统计字符数
从键盘输入一行字符,统计字母、空格、数字、其他字符的个数,并显示。
要求:
提示输入一行字符串;键盘输入字符串,Enter键结束输入,并换行显示结果。
题目20模拟幸运抽号
要求:
程序运行时,在屏幕上随机跳出一组十位数字的号码,敲空格键时停止,得到一组幸运号码。
题目21程序设计
设计一个程序,让计算机屏幕输出40个自然数来,使得其中任意两个数之差均不相等。
题目22查表
将键盘输入的数字月份查表后显示出相应英文字母的缩写形式。
要求:
提示输入一个月份数字N;从键盘输入数字,Enter键结束输入,并换行显示查表结果。
题目23数值比较
提示输入数字1;输入任意数字int1,点击Enter结束输入;
提示输入数字2;输入任意数字int2,点击Enter结束输入。
如果int1大于int2,则输出“int1>int2”;如果int1等于int2,则输出“int1=int2”;如果int1小于int2,则输出“int1 题目24数值求和 提示输入数字,输入任意数字int,点击Enter结束输入,输出“1+2+3+…+int”的值;点击Enter程序退出。 题目25质数判断 提示输入数字;输入任意数字int1,点击Enter结束输入;如果int1是质数,则输出“int1isaprimenumber”;如果int1不是质数,则输出“int1isnotaprimenumber”;点击Enter程序退出。 题目26闰年判断 提示输入年份;输入四位数字int1,点击Enter结束输入;如果int1表示的年份是闰年,则输出“int1yearsisaleapyear”如果int1表示的年份不是闰年,则输出“int1yearsisnotaleapyear”;点击Enter程序退出。 题目27编写程序求函数值 有一函数x(x<1)y=2x-1(1≤x<10)3x-11(x≥10)编写程序,实现输入x值,输出y值。 题目28把100-200之间不能被3整除的数输出 要求: 提示数据范围为100-200;Enter键换行显示结果。 题目29用循环程序,显示乘法表 要求输入0-10之间的数值a,显示1到a值的乘法表。 题目30三角形判断 输入a,b,c三边后,判断是否能构成三角形,如能构成三角形,输出三角形的周长,否则输出“ERROR”。 要求: 提示输入三角形三边长度abc;键盘输入,中间空格隔开;Enter键结束输入z2,并换行显示判断结果。 题目31要求用户从键盘输入一个不超过5位的整数,计算并输出该数的各位之和 要求: 提示输入一十进制数;键盘输入,Enter键结束输入,并换行显示结果。 题目32计算并打印杨辉三角形 要求打印到第N行,N由键盘输入。 要求: 提示输入一整数N;键盘输入,Enter键结束输入,并换行显示结果。 题目33成绩转换 给出一个百分制成绩,要求输出成绩等级A、B、C、D、E。 90分以上为A,80-89分为B,70-79分为C,60-69分为D,60分一下为E。 要求: 提示输入一分数score;键盘输入,Enter键结束输入,并换行显示结果。 题目34成绩统计 输入10个学生的成绩按后,依次在界面上显示: 及格人数x个,不及格人数y个。 要求: 提示输入10学生成绩score,成绩之间空格隔开,键盘送入;换行输出“10学生成绩分别为……”换行显示结果: 及格人数x个,不及格人数y。 题目35求2个正整数N1和N2的最小公倍数 要求: 提示输入两十进制正整数;键盘输入,两整数之间空格隔开,Enter键结束输入,并换行显示结果。 题目36求2个正整数N1和N2的最大公约数 要求: 提示输入两十进制正整数;键盘输入,两整数之间空格隔开,Enter键结束输入,并换行显示结果。 题目37打印回文数 如果一个数从左边和从右边读都是相同的数,就称它为回文数,例如383。 求出500以内的回文数并输出显示。 要求: 提示数据范围为0-500;Enter键,换行显示结果。 题目38计算平方根 从键盘输入一个正整数,计算其平方根并输出。 要求: 提示输入一整数;键盘输入,Enter键结束输入,并换行显示结果。 题目39屏幕输出10到200之间的孪生素数对。 孪生素数对指两值相差2的一对素数,如11与13。 题目40输出满足条件的数 屏幕输出1000以内同时满足如下条件的数: 个位数与十位数之和除以10所得的余数等于百位数字。 题目41打印输出所有水仙花数 水仙花数: 三位数,各个位数的立方和为数字本身。 要求: 提示“Enter键输出所有水仙花”;Enter键,换行显示结果。 题目42输出完数 一个数如果恰好等于它的因子之和,这个数就成为“完数“。 例如6的因子为1,2,3,且6=1+2+3,因此6为完数。 编程找出10000以内所有完数并输出。 要求: 提示“Enter键输出10000以内所有完数”;Enter键,换行显示结果。 题目43输出满足条件的数 求具有abcd=(ab+cd)2性质的4位数并输出。 例如3025=(30+25)2。 要求: Enter键,输出所有结果。 题目44输出两个数的平方差 求出两个数的平方差,若是负数,要输出负号。 要求: 由键盘输入两整数a、b,中间空格隔开;Enter键结束输入,并换行显示结果。 题目45输出满足条件的数 从键盘输入一个以Enter结束的十进制数字串(不超过20个),按ASCII码值的降序显示这个数字串ASCII码值最大和最小的两个数字。 微机原理课程设计题目——硬件部分 硬件设计题目以班为单位选题,可以2-3个人一个组,每个组的题目不能相同。 题目一基于汇编语言的电子秒表设计 (一)设计目的 培养和锻炼在学习完本门课后综合应用所学理论知识,解决实际工程设计和应用问题的能力。 通过课程设计,要求熟悉和掌握微机系统的软件、硬件设计的方法、设计步骤,得到微机开发应用方面的初步训练。 本设计要求学生采用8086微处理器完成电子秒表系统的独立设计。 通过本次课程设计掌握8255、8259、8253等芯片使用方法和编程方法,进一步理解所学的相关芯片的原理、内部结构、使用方法等,学会相关芯片实际应用及编程,同时并了解综合问题的程序设计掌握实时处理程序的编制和调试方法,掌握一般的设计步骤和流程,为后续课程和今后的工作实践打下一定的基础。 (二)设计内容 设计一个可任意启动/停止的电子秒表,要求用6位LED数码显示,计时单位为1/100秒。 利用功能键进行启/停控制。 其功能为: 上电后计时器清0,当第一次(或奇数次)按下启/停键时开始计数。 第2次(或偶数次)按下该键时停止计时,再一次按启/停键时清零后重新开始计时。 可用开关控制,也可用按键控制 (三)设计要求 1、基本要求: 1)设计可以显示1~60秒的无存储功能的秒表,最小单位为毫秒。 2)通过键盘按键控制秒表清零、暂停、继续,退出等。 其中数字0控制清零,数字1控制继续和退出。 3)软硬件设计最后通过proteus软件仿真验证。 2、提高要求: 1)秒表可以分组存储、批量显示、倒计时等。 2)采用图像显示,界面精美,设置报警声等 题目二用8255、8253实现交通灯的模拟控制 一、设计目的 通过该设计,掌握8255并行接口芯片的使用和数码管的使用,并掌握相应的程序设计和电路设计的技能。 是对8255并行接口芯片章节理论学习的总结和补充,为后续的硬件课程的学习打下基础。 二、设计内容 南北方向和东西方向的红绿黄灯由对应的2组LED表示,这6个LED灯由8255端口A控制。 三、基本原理 1、交通灯分红黄绿,红灯禁止通行,黄灯减速,绿灯通信。 开始南北方向绿灯亮(东西方向应立即变为红灯),时间为60秒,时间到0后,黄灯亮3秒后(东西方向红灯的时间为63秒),红灯亮,红灯为33秒。 东西方向绿灯为此0秒,黄灯为3秒。 2、延时1秒可以采用软件延时实现。 3、8255端口A与LED连接图如右: 4、8255A控制数码管的原理见项目5。 四、设计步骤 1.电路设计: 根据设计内容,通过分析,设计出相应的电路图。 2、8255控制字设计: 根据要求,设计出各自8255的控制字。 3、程序设计: 根据要求,设计程序流程图,并设计相应的程序。 4、验证: 用Proteus软件进行仿真测试和验证。 题目三基于PROTEUS的跑马灯系统设计及仿真 (一)跑马灯的控制 1.通过8255A并口来控制LED发光二极管的亮灭。 2.A口作为输出控制LED灯的亮灭,B口作为按键信号的输入作为跑马灯方式选择。 3.用按键控制不同的跑马灯方式。 (二)设计要求 第一种灯光变换效果: L1→L2→L3→L4→L5→L6→L7→L8,如图6所示。 第二种灯光变换效果: L8→L7→L6→L5→L4→L3→L2→L1; 第一种变换效果反向即为第二种效果。 第三种灯光变换效果: L1L8→L2L7→L3L6→L4L5→L3L6→L2L7→L1L8,如下 图所示。 图7LED第三种变换效果 步骤 1.电路设计: 根据设计内容,通过分析,设计出相应的电路图。 2、8255控制字设计: 根据要求,设计出各自8255的控制字。 3、程序设计: 根据要求,设计程序流程图,并设计相应的程序。 4、验证: 用Proteus软件进行仿真测试和验证。 题目四基于PROTEUS的8个LED灯循环闪烁 要求: 首先是1,3,5,7号LED灯依次亮1秒钟,当第7号LED亮后,这四个灯同时闪烁5下;然后是,2,4,6,8号依次亮1秒钟,当第8号LED亮后,这四个灯同时闪烁5下。 硬件设计提示: 构建8086最小系统,然后设计基于8255A的LED灯控制系统。 设计报告: 写出主要设计思路,工作原理;画出硬件接线图;调试出现的问题及解决方法;提交程序清单。 题目五抢答器控制模拟程序 设计任务: 用汇编语言模拟设计一抢答器工作的程序。 抢答开始后,显示各抢答输入的时间,并将最快抢答标识为红色,且闪烁。 基本要求: 具有8个抢答输入(由8个开关代替,其它按键不起作用);显示抢答剩余时间(初始10秒);显示抢答成功者(显示数字);抢答成功后,有声音提示;时间分辨率小于10ms; 设计报告: 写出主要设计思路,工作原理;画出硬件接线图;调试出现的问题及解决方法;提交程序清单。 题目六电子钟的制作 一、设计目的 通过该设计,掌握8255并行接口芯片的使用,和数码管的使用,并掌握相应的程序设计和电路设计的技能。 是对8255并行接口芯片章节理论学习的总结和补充,为后续的硬件课程的学习打下基础。 二、设计内容 利用6位数码管显示分和秒,分秒的数字之间用数码管上的小数点隔开。 要求秒钟显示从00-59,分钟显示从00-59,60秒后,分钟要进1。 三、基本的技术原理 2、数码管的原理见下图。 数码管由8255端口B和端口C联合控制,端口B负责控制某个数码管中的那些段码的显示和小数点的显示(PB7)。 端口C的PC4,PC5,PC6发送的信号通过译码后,负责选择6个数码管中的1个显示,即某时刻只有1个数码显示,如果要让几个同时显示,则采用来回扫描显示的方法,且当某个数码管显示时,必须要有一定的延时,约在100ms左右,太短显示不明显(发光不够),太长会产生闪烁。 数码管的控制如下图所示: 3、延时1秒可以采用软件延时实现,也可以利用8253对1MHz的信号分频得到。 四、实验步骤 1.电路设计: 根据设计内容,通过分析,设计出相应的电路图。 2、8255控制字设计: 根据要求,设计出各自8255的控制字。 3、程序设计: 根据要求,设计程序流程图,并设计相应的程序。 4、验证: 用Proteus软件进行仿真测试和验证。 题目七数字秒表的设计 一、设计目的 通过该设计,掌握8255并行接口芯片、8253定时计数芯片的使用和数码管的使用,并掌握相应的程序设计和电路设计的技能。 是对8255并行接口芯片章节理论学习的总结和补充,为后续的硬件课程的学习打下基础。 二、设计内容 利用8253计数器2和计数器1,实现1Hz信号的产生,然后计数器采用硬件触发选通方式计数,CPU读取计数结果,并转换为读秒计数,并把读秒计数的结果用数码管显示出来(2位)。 三、基本原理 1、数码管的工作原理参见项目5。 2、8253的连接图如下: 四、设计步骤 1.电路设计: 根据设计内容,通过分析,设计出相应的电路图。 2、8255控制字设计: 根据要求,设计出各自8255的控制字。 3、程序设计: 根据要求,设计程序流程图,并设计相应的程序。 4、验证: 用Proteus软件进行仿真测试和验证。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 课程设计