用汇编语言实现:统计一个班30个学生成绩的等级(A:90~100,B:80~89,C:70~79,D:60~69,E:6
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/07/03 09:45:56
用汇编语言实现:统计一个班30个学生成绩的等级(A:90~100,B:80~89,C:70~79,D:60~69,E:60以下).
统计结果分别存入ABCDE单元中
统计结果分别存入ABCDE单元中
; 某班20名同学,编程序将全班优秀的成绩和不及格的成绩分别保存到两个数组.备注:成绩(是指包括学生姓名,学号和分数)
DATA SEGMENT
chengji DB 'xiaoming', '001', 90,
\x09\x09\x09'xiaofang', '002', 91,
\x09\x09\x09'xiaomanj', '003', 45,
\x09\x09\x09'xiaoke0h', '004', 23,
\x09\x09\x09'xiaoheik', '005', 95
YOUXIU DB 'excellent:',0ah,0dh,100 DUP(0);优秀
BUJIGE DB 'fail:',0ah,0dh,100 DUP(0);不及格
DATA ENDS
CODE SEGMENT
ASSUME DS : DATA, CS : CODE
\x09\x09\x09\x09\x09MAIN PROC FAR
\x09\x09\x09\x09\x09MOV AX, DATA
\x09\x09\x09\x09\x09MOV DS, AX
\x09\x09\x09\x09\x09LEA SI, YOUXIU+10+2
\x09\x09\x09\x09\x09LEA DI, BUJIGE+4+2
\x09\x09\x09\x09\x09LEA BX, CHENGJI
\x09\x09\x09\x09\x09MOV CX, 5
\x09\x09\x09\x09\x09
\x09\x09\x09\x09LL1: MOV AL, [BX + 11]
\x09\x09\x09\x09\x09 CMP AL, 90
\x09\x09\x09\x09\x09 JAE YX
\x09\x09\x09\x09\x09 CMP AL, 60
\x09\x09\x09\x09\x09 Jae NEXT
\x09\x09\x09\x09\x09 push cx
\x09\x09\x09\x09\x09 mov cx, 8
\x09\x09\x09\x09 N1:
\x09 mov al, [bx]
\x09\x09 \x09 mov [di], al
\x09\x09 \x09 inc bx
\x09\x09\x09 inc di
\x09\x09\x09\x09 loop N1
\x09\x09\x09\x09 mov ax,0d0ah;回车换行
\x09\x09 \x09\x09\x09 mov [di],ax
\x09\x09 \x09\x09\x09 mov ax,'$'
\x09\x09 \x09\x09\x09 mov [di+2],ax
\x09\x09 \x09\x09\x09 add di,2
\x09\x09 \x09\x09 add bx,4
\x09\x09 \x09\x09\x09 pop cx
\x09\x09\x09\x09\x09 JMP loo
\x09\x09\x09\x09YX :
\x09\x09\x09\x09\x09 push cx
\x09\x09\x09\x09\x09 mov cx, 8
\x09\x09\x09\x09N2 :
\x09\x09 \x09\x09 mov al, [bx];复制名字
\x09\x09 \x09\x09\x09 mov [si], al
\x09\x09\x09\x09 inc bx
\x09\x09 \x09\x09\x09 inc si
\x09\x09 \x09\x09loop N2
\x09\x09 \x09\x09\x09 mov ax,0d0ah
\x09\x09 \x09\x09\x09 mov [si],ax
\x09\x09 \x09\x09\x09 mov ax,'$'
\x09\x09 \x09\x09\x09 mov [si+2],ax
\x09\x09 \x09\x09\x09 add si,2
\x09\x09 \x09\x09 add bx,4
\x09\x09 \x09\x09\x09 pop cx
\x09\x09\x09\x09\x09jmp loo
\x09 NEXT :
\x09 \x09\x09\x09add bx,13
\x09 \x09loo:
\x09 \x09 LOOP LL1
\x09 \x09
\x09 \x09 \x09mov ah,09h
\x09 \x09 \x09mov dx,offset YOUXIU
\x09 int 21h
\x09 mov dx,offset bujige
\x09 int 21h
\x09
MOV AH, 4CH
\x09INT 21H
\x09MAIN ENDP
;---------------------
;PROC NAMD : COPY
;FEATURE : COPY A STRING FORM ONE PLACE TO ANOTHER
;INPUT PARAMTER : BUF1,BUF2,COUNT
;OUTPUT PARAMETER : NONE
COPY PROC
; MOV SI,OFFSET BUF1 入口参数 si to di
; MOV DI,OFFSET BUF2
; MOV CX,COUNT 入口参数 :字节数
CLD
REP MOVSB
RET
COPY ENDP
\x09\x09\x09 CODE ENDS
\x09\x09\x09 END MAIN
\x09}
DATA SEGMENT
chengji DB 'xiaoming', '001', 90,
\x09\x09\x09'xiaofang', '002', 91,
\x09\x09\x09'xiaomanj', '003', 45,
\x09\x09\x09'xiaoke0h', '004', 23,
\x09\x09\x09'xiaoheik', '005', 95
YOUXIU DB 'excellent:',0ah,0dh,100 DUP(0);优秀
BUJIGE DB 'fail:',0ah,0dh,100 DUP(0);不及格
DATA ENDS
CODE SEGMENT
ASSUME DS : DATA, CS : CODE
\x09\x09\x09\x09\x09MAIN PROC FAR
\x09\x09\x09\x09\x09MOV AX, DATA
\x09\x09\x09\x09\x09MOV DS, AX
\x09\x09\x09\x09\x09LEA SI, YOUXIU+10+2
\x09\x09\x09\x09\x09LEA DI, BUJIGE+4+2
\x09\x09\x09\x09\x09LEA BX, CHENGJI
\x09\x09\x09\x09\x09MOV CX, 5
\x09\x09\x09\x09\x09
\x09\x09\x09\x09LL1: MOV AL, [BX + 11]
\x09\x09\x09\x09\x09 CMP AL, 90
\x09\x09\x09\x09\x09 JAE YX
\x09\x09\x09\x09\x09 CMP AL, 60
\x09\x09\x09\x09\x09 Jae NEXT
\x09\x09\x09\x09\x09 push cx
\x09\x09\x09\x09\x09 mov cx, 8
\x09\x09\x09\x09 N1:
\x09 mov al, [bx]
\x09\x09 \x09 mov [di], al
\x09\x09 \x09 inc bx
\x09\x09\x09 inc di
\x09\x09\x09\x09 loop N1
\x09\x09\x09\x09 mov ax,0d0ah;回车换行
\x09\x09 \x09\x09\x09 mov [di],ax
\x09\x09 \x09\x09\x09 mov ax,'$'
\x09\x09 \x09\x09\x09 mov [di+2],ax
\x09\x09 \x09\x09\x09 add di,2
\x09\x09 \x09\x09 add bx,4
\x09\x09 \x09\x09\x09 pop cx
\x09\x09\x09\x09\x09 JMP loo
\x09\x09\x09\x09YX :
\x09\x09\x09\x09\x09 push cx
\x09\x09\x09\x09\x09 mov cx, 8
\x09\x09\x09\x09N2 :
\x09\x09 \x09\x09 mov al, [bx];复制名字
\x09\x09 \x09\x09\x09 mov [si], al
\x09\x09\x09\x09 inc bx
\x09\x09 \x09\x09\x09 inc si
\x09\x09 \x09\x09loop N2
\x09\x09 \x09\x09\x09 mov ax,0d0ah
\x09\x09 \x09\x09\x09 mov [si],ax
\x09\x09 \x09\x09\x09 mov ax,'$'
\x09\x09 \x09\x09\x09 mov [si+2],ax
\x09\x09 \x09\x09\x09 add si,2
\x09\x09 \x09\x09 add bx,4
\x09\x09 \x09\x09\x09 pop cx
\x09\x09\x09\x09\x09jmp loo
\x09 NEXT :
\x09 \x09\x09\x09add bx,13
\x09 \x09loo:
\x09 \x09 LOOP LL1
\x09 \x09
\x09 \x09 \x09mov ah,09h
\x09 \x09 \x09mov dx,offset YOUXIU
\x09 int 21h
\x09 mov dx,offset bujige
\x09 int 21h
\x09
MOV AH, 4CH
\x09INT 21H
\x09MAIN ENDP
;---------------------
;PROC NAMD : COPY
;FEATURE : COPY A STRING FORM ONE PLACE TO ANOTHER
;INPUT PARAMTER : BUF1,BUF2,COUNT
;OUTPUT PARAMETER : NONE
COPY PROC
; MOV SI,OFFSET BUF1 入口参数 si to di
; MOV DI,OFFSET BUF2
; MOV CX,COUNT 入口参数 :字节数
CLD
REP MOVSB
RET
COPY ENDP
\x09\x09\x09 CODE ENDS
\x09\x09\x09 END MAIN
\x09}
用汇编语言实现:统计一个班30个学生成绩的等级(A:90~100,B:80~89,C:70~79,D:60~69,E:6
编程,输入一个成绩等级(A~E),显示相应的百分制成绩段A(90~100)B(80~89)C(70~79)D(60~69
输入一个百分制成绩,输出对应的等级A:>=90,B:80~89,C:70~79,D:60~69,E:=90,B:80~8
输入一个百分制成绩,输出对应的等级A:>=90,B:80~89,C:70~79,D:60~69,E:
1. 给出一个百分制成绩,要求输出成绩等级A、B、C、D和E.90分以上为A,89~80为B,79~70为C,69~60
.输入百分制的学生成绩,输出A(90-100),B(80-89),C(70-79),D(60-69),E(60分以下)等
.给出一个百分制成绩s,要求输出成绩等级A,B,C,D,E.90分以上为A.80~90分为B,70~79分为D.60分以
给出一个百分制成绩,要求输出成绩等级‘A’、‘B’、‘C’、‘D’、‘E’.90分以上为‘A’,80~89分为‘B
输入一个百分制成绩,要求输出成绩等级A,B,C,D,E.90分以上为A,80~89分为B
给出一百分制成绩,要求输出成绩等级‘A’,‘B’,‘C’,‘D’,‘E’.90分以上为‘A’,80~89分为‘B’,70
给出一百分制成绩,要求输出成绩等级'A','B','C',‘D','E'.90分以上为'A',80-89分为'B',70
C语言,输出百分制成绩等级ABCDE,对应关系:A 91~100 B 81~90 C 71~80 D 60~70 E 5