微型计算机原理排序程序,微机原理实验五循环结构程序设计:排序程序设计实验.doc...

微机原理实验五循环结构程序设计:排序程序设计实验

实验五 循环结构的程序设计:排序程序设计实验

1、实验目的

掌握接收键盘数据的方法。

掌握循环结构的程序设计和排序程序设计的方法。

进一步熟练在PC上建立、汇编、链接、调试和运行汇编语言程序的过程。

2、实验内容

用汇编语言编写学生成绩统计程序:键盘输入学生成绩到SCORE中(0<=分数<=100,设有10个学生成绩分别是56,69,84,82,73,88,99,63,100,80)。编程将它们由大到小排序,存回到原来的SCORE变量中;并统计低于60分、60~69、70~79、80~89、90~99及100分的人数,分别存放在S5、S6、S7、S8、S9、S10单元中。

3、实验及报告要求:

要求画出完整的程序流程图。

根据流程图,编写完整的汇编代码源文件,要求写出所有伪指令和指令的注释;

编译、连接生成可执行文件,调试该可执行文件。

写出完整的实验报告,特别是“实验结果”与“实验总结体会”部分,是评分的主要依据。

实验总结中要求结合实验中的经验、教训或体会对汇编语言格式、调试方法、汇编指令及汇编语言编程方法、微机原理学习方法作出总结。

4、思考题:

如何从屏幕输出结果?

统计人数的程序流程图:

Y

N

N

Y

N

YN

Y

SCORE的输入和排序流程图:

N

Y

N

y

输入DATAS SEGMENT

BUFFER DB 80,81 DUP(0),'$'

SCORE1 DB 10 DUP(0)

;此处输入数据段代码

DATAS ENDS

STACKS SEGMENT

STA DB 64 DUP(0)

SP_TOP DB 0

STACKS ENDS

CODES SEGMENT

ASSUME CS:CODES,DS:DATAS,SS:STACKS

START:

MOV AX,DATAS

MOV DS,AX

MOV AX,STACKS

MOV SS,AX

LEA SP,SP_TOP

LEA DX,BUFFER

LEA DI,SCORE1

MOV AH,0AH

INT 21H

LEA SI,BUFFER

ADD SI,2

MOV DL,0

MOV CX,10

JU:MOV AL,[SI]

CMP AL,0DH

JE EXIT

PUSH CX

CMP AL,2CH

JE CH1

POP CX

INC SI

INC DL

LOOP JU

JMP EXIT

CH1:CMP DL,2

JNE CH2

MOV AL,[SI-2]

SUB AL,30H

MOV CL,10

MUL CL

MOV AH,0

MOV BL,[SI-1]

SUB BL,30H

ADD AL,BL

MOV [DI],AL

POP CX

INC DI

INC SI

MOV DL,0

LOOP JU

CH2:MOV [DI],100

POP CX

INC DI

INC SI

MOV DL,0

LOOP JU

EXIT: MOV AH,4CH

INT 21H

CODES ENDS

END START

记人数DATA SEGMENT

SCORE DB 67

S5 db 0

S6 db 0

S7 db 0

S8 db 0

S9 db 0

S10 db 0

TABLE DW NP,NP,NP,NP,NP,NP,S60,S70,S80,S90,S100

DATA ENDS

CODE SEGMENT 'CODE'

ASSUME CS:CODE,DS:DATA

START:MOV AX,DATA

MOV DS,AX

MOV AH,0

LEA SI,SCORE

SP:MOV AL,[SI]

MOV BL,10

DIV BL

SAL AL,1

MOV BL,AL

MOV BH,0

JMP TABLE

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值