汇编语言课程设计
工作环境:Win XP(x86)、QASM
课题描述:输入一个数值,然后计算1到此数值的累加和
设计思路:
1、先用INT21中的一号调用循环读入输入的数值,并将数值转化为十进制,此段功能使用TEENITS1实现;
2、使用TEENITS3完成累加功能;
3、TEENITS4将累加和转化为十进制;
4、TEENITS5调用INT21的9号功能输出累加和的字符。
测试数据:
输入值
| 50
| 100
| 200
| 300
|
累加和
| 1275
| 5050
| 20100
| 45150
|
正确性
| 正确
| 正确
| 正确
| 正确
|
源代码:复制内容到剪贴板
代码:
.MODEL
SMALL
.STACK
.DATA
TEENITS
DB
8 DUP(?),'
.CODE
.startup
XOR
BX,BX
TEENITS1:
MOV
AH,01
INT
21H
CMP
AL,0DH
JZ
TEENITS2
MOV
AH,0
SUB
AL,'0'
SHL
BX,1
MOV
DX,BX
MOV
CL,2
SHL
BX,CL
ADD
BX,DX
ADD
BX,AX
JMP
TEENITS1
TEENITS2:
MOV
AX,0
TEENITS3:
ADD
AX,BX
DEC
BX
CMP
BX,0
JNZ
TEENITS3
MOV
BX,10
MOV
CX,0
TEENITS4:
MOV
DX,0
DIV
BX
PUSH
DX
INC
CX
CMP
AX,0
JNZ
TEENITS4
LEA
BX,TEENITS
TEENITS5:
POP
AX
ADD
AL,'0'
MOV
[BX],AL
INC
BX
LOOP
TEENITS5
MOV
DX,OFFSET TEENITS
MOV
AH,09
INT
21H
.EXIT
END