用汇编语言实现:统计一个班30个学生成绩的等级(A:90~100,B:80~89,C:70~79,D:60~69,E:6

问题描述:

用汇编语言实现:统计一个班30个学生成绩的等级(A:90~100,B:80~89,C:70~79,D:60~69,E:60以下).
统计结果分别存入ABCDE单元中
1个回答 分类:综合 2014-09-22

问题解答:

我来补答
; 某班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}
 
 
展开全文阅读
剩余:2000
下一页:格子里面填一下