用汇编语言实现:统计一个班30个学生成绩的等级(A:90~100,B:80~89,C:70~79,D:60~69,E:60以下).统计结果分别存入ABCDE单元中
来源:学生作业帮助网 编辑:六六作业网 时间:2025/02/08 19:32:50
用汇编语言实现:统计一个班30个学生成绩的等级(A:90~100,B:80~89,C:70~79,D:60~69,E:60以下).统计结果分别存入ABCDE单元中
用汇编语言实现:统计一个班30个学生成绩的等级(A:90~100,B:80~89,C:70~79,D:60~69,E:60以下).
统计结果分别存入ABCDE单元中
用汇编语言实现:统计一个班30个学生成绩的等级(A:90~100,B:80~89,C:70~79,D:60~69,E:60以下).统计结果分别存入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}