微型计算机原理课程设计学院 专业 班级 学号 姓名 一、目的结合微型计算机课程的学习,进一步巩固已学的知识,同时针对计算机原理知识的具体应用,学会对系统中 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 的学生的名次。 编写程序如下学生成绩名次表流程图入口CX 入栈保存 学生数送 CSAL 送 0 分BX 和 SI 发向成绩表首址AL>=[SI][SI] 送 AL,DX 记录对应学号SI+1CX-1=0将本次扫描的最高成绩清0CX 出栈返回YNYN开始YNYN初始化显示提示信息SI 指向成绩表首址学生送数 CX调 GETNUN, 该成绩送[SI]SI+1CX-1=0学生送数 CXDI 指向名次表首址调 SCAN 子程序 , 扫描成绩表计算名次 , 填入 DX 举号对应的名次单元CX-1=0显示学生名次返回DOS 编写程序如下CRLF MACROA MOV AH,02H AS MOV DL,0DH INT 21H MOV AH,02H MOV DL,0AH INT 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 2000HSEQU DB 30 DUP()DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATA ;程序初始化 MOV DS,AX MOV ES,AX MOV AH,09H MOV DX,OF...