2014微机原理实验题目及答案(2)

2019-04-09 19:55

CALL CHANG ;十六进制数变换成ASCII码 MOV AH,02 MOV DL,AL INT 21H POP AX

AND AL,0FH ;处理低位十六进制数 CALL CHANG ;同上解释 MOV AH,02 MOV DL,AL INT 21H POP DX POP CX POP AX RET

DISPAL ENDP

CHANG PROC NEAR ;数码转换 CMP AL,10 JNGE CHANG1 ADD AL,7 CHANG1: ADD AL,30H RET

CHANG ENDP DISPAX PROC NEAR XCHG AL,AH CALL DISPAL XCHG AH,AL CALL DISPAL RET

DISPAX ENDP DISPCR PROC NEAR PUSH AX PUSH DX MOV AH,2

MOV DL,0AH INT 21H MOV AH,2 MOV DL,0DH INT 21H POP DX POP AX RET

DISPCR ENDP

TRANS10TO16 PROC NEAR PUSH CX PUSH DX PUSH SI XOR AX,AX XOR CX,CX MOV CL,[SI] INC SI MOV AL,[SI] INC SI SUB AL,30H DEC CX JCXZ TRANSF2 MOV BX,10 TRANSF1: MUL BX JC TRANSF_ERR MOV DL,[SI] INC SI SUB DL,30H ADD AL,DL ADC AH,0 JC TRANSF_ERR LOOP TRANSF1

MOV BX,0 TRANSF2: JMP TRANSF_OK TRANSF_ERR: MOV BX,-1 TRANSF_OK: POP SI POP DX POP CX RET

TRANS10TO16 ENDP CODE ENDS END START

(3)成绩汇总

对输入的一些成绩进行分类汇总。 要求:

(a)所有数字由键盘输入;

(b)输入的成绩个数为任意个(小于100); (c)对成绩进行归类并输出显示在屏幕:

·显示最高成绩、最低成绩、平均成绩

·显示90-100分人数,80-89分人数,70-79分人数,60-69分人数,低于60分人数,

·显示无效数字个数(非数字或大于100数字个数) 答案:

DATA SEGMENT

STRING1 DB 'Please Input Score:','$' ;提示输入 STRMA DB 'THE MAX SCORE IS: ','$' STRMI DB 'THE MIN SCORE IS: ','$' STRAV DB 'THE AVERAGE SCORE IS:','$' STR1 DB 'THE NUM OF 0-59:','$'

STR2 DB 'THE NUM OF 60-69: ','$' STR3 DB 'THE NUM OF 70-79: ','$' STR4 DB 'THE NUM OF 80-89: ','$' STR5 DB 'THE NUM OF 90-100: ','$' STR6 DB 'THE WRONG NUM:','$' ;输出排序从大到小

SCORE DW 60 DUP(0) ;分配存放空间 DECIMAL DB 5 DUP(0) S5 DW 0 ;定义变量 S6 DW 0 S7 DW 0 S8 DW 0 S9 DW 0 S10 DW 0 DATA ENDS

STACK SEGMENT ;堆栈段 DW 64 DUP(0) TOP LABEL WORD STACK ENDS

CODE SEGMENT ;代码段 ASSUME CS:CODE,DS:DATA,SS:STACK START:

MOV AX,DATA MOV DS,AX MOV AX,STACK MOV SS,AX LEA SP,TOP

MOV DX,OFFSET STRING1 ;显示提示输入 MOV AH,09H INT 21H

XOR BX,BX ;寄存器清零

XOR CX,CX XOR SI,SI XOR DI,DI

INPUT: MOV AH,1 ;输入一个字符 INT 21H

CMP AL,0DH ;是否为回车键 JZ OVER ;是就跳到OVER CMP AL,39H

JG ERR_COUNT ;判断是否为0-9的数 CMP AL,20H ;是否为空格 JZ SAVE

SUB AL,30H ;变为真数 MOV CL,4

SHL BX,CL ;左移四位,变为BCD码 ADD BL,AL CMP BX,100H JG ERR_COUNT

JMP INPUT

ERR_COUNT: INC S10 MOV BX,0 JMP INPUT

SAVE:

MOV SCORE[SI],BX ;保存到SCORE中


2014微机原理实验题目及答案(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:阮成发纵论“责任风暴”和“治庸计划”

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: