一些简单的汇编程序

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.编制程序计算S=1+2+3+4+……+N直到和大于500为止,并将结果在屏幕上显示出来(N的值和最终的和的值)。

DATA SEGMENT

N DW?

SUM DW?

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START:

MOV AX,DATA

MOV DS,AX

MOV AX,0

MOV BL,0

E1: INC BL

ADD AX,BX

CMP AX,500

JBE E1

MOV [N],BX

MOV [SUM],AX

E2:

MOV AX,BX

MOV BL,10

DIV BL

ADD AL,30H

MOV DL,AL

MOV CL,AH

MOV AH,2

INT 21H

ADD CL,30H

MOV DL,CL

MOV AH,2

INT 21H

MOV AH,2

MOV DL,0AH

INT 21H

MOV AX,SUM

CWD

MOV BX,100

DIV BX

MOV CX,DX

ADD AL,30H

MOV DL,AL

MOV AH,2

INT 21H

MOV BL,10

MOV AX,CX

DIV BL

MOV CL,AH

MOV AH,2

ADD AL,30H

MOV DL,AL

INT 21H

MOV AH,2

ADD CL,30H

MOV DL,CL

INT 21H

MOV AH,4CH

INT 21H

CODE ENDS

END START

2.从键盘输入学生成绩(A、B、C、D),自动汇总并显示各类分数的人数。按下$键则停止输入;若按下A、B、C、D之外的键则提示“INPUT ERROR”信息。

DATA SEGMENT

M1 DB'Please input

A,B,C,D:',13,10,'$'

M2 DB 13,10,'Input error!

',13,10,'$'

M3 DB 13,10,'The number of A is: $' M4 DB 13,10,'The number of B is: $' M5 DB 13,10,'The number of C is: $' M6 DB 13,10,'The number of D is: $'

DATA ENDS

STACK SEGMENT

STACK ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA,SS:STACK START:

MOV AX,DATA

MOV DS,AX

MOV AH,9

MOV DX,OFFSET M1

INT 21H

MOV BX,0

MOV CX,0

E1:

MOV AH,1

INT 21H

MOV AH,41H

CMP AL,AH

JNZ E2

INC BL

JMP E1

E2:

MOV AH,42H

CMP AH,AL

JNZ E3

INC BH

JMP E1

E3:

MOV AH,43H

CMP AH,AL

JNZ E4

INC CL

JMP E1

E4:

MOV AH,44H

CMP AH,AL

JNZ E5

INC CH

JMP E1

E5:

MOV AH,24H

CMP AH,AL

JZ E6

MOV AH,9

MOV DX,OFFSET M2 INT 21H

JMP E1

E6:

MOV AH,9

MOV DX,OFFSET M3

INT 21H

MOV AH,2

ADC BL,30H

MOV DL,BL

INT 21H

MOV AH,9

MOV DX,OFFSET M4

INT 21H

MOV AH,2

ADC BH,30H

MOV DL,BH

INT 21H

MOV AH,9

MOV DX,OFFSET M5

INT 21H

MOV AH,2

ADC CL,30H

MOV DL,CL

INT 21H

MOV AH,9

MOV DX,OFFSET M6

INT 21H

MOV AH,2

ADC CH,30H

MOV DL,CH

INT 21H

MOV AH,4CH

INT 21H

CODE ENDS

END START

3.动态输入20个二位无符号数,找出其中最大数并显示。DATAS SEGMENT

M1 DB'Please input 5

numbers:',13,10,'$'

M2 DB'The biggest number is:$' M3 DB' ',13,10,'$'

MAX DW?

DATAS ENDS

相关文档
最新文档