输入一个数N,然后依次输入N个数,每个数之间隔一行,将输入的N个数,放到一个数组ARRAY当中,然后显示排序前后数组的元素。
代码改自:https://www.cnblogs.com/Coder-L/p/11006357.html
因为目前水平有限,有一些代码几乎是重复的,所以代码量有点多。以后再来改。
不过代码每个步骤都有写明,认真看一遍应该是没问题的。
以下是随便写的一个调试程序:
DATAS SEGMENT
;此处输入数据段代码
OUTPUT1 DB 'How many data to input? (less than or equal to 100):',0AH,0DH,'$'
OUTPUT2 DB 'Input ','$'
OUTPUT2_1 DB ' datas,press [Enter] after input each data.',0AH,0DH,'$'
OUTPUT3 DB 'Before sorting: ','$'
OUTPUT4 DB 'After sorting: ','$'
OUTPUT5 DB 'ERROR: OVERFLOW! Please input again:','$'
ARRAY DW 100 DUP(?)
M DW ?,'$'
DATAS ENDS
STACKS SEGMENT
;此处输入堆栈段代码
DW 256 dup(?)
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
;----------------------------
;输出“How many data to input? (less than or equal to 100):”
LEA DX,OUTPUT1
MOV AH,09H
INT 21H
;----------------------------
;输入一个数,并将其存入M
CALL Input1
;----------------------------
;输出“Input M datas,press [Enter] after input each data.”
LEA DX,OUTPUT2
MOV AH,09H
INT 21H
CALL Print1
LEA DX,OUTPUT2_1
MOV AH,09H
INT 21H
;--------------