在以XX为首地址的内存区,存放100个无符号数,并是按从小至大有序。写出将无符号数23插入并保持依然有序的程序。(插入以后,数据为101个)
【正确答案】:DDD SEGMENT
XX DB(定义100个字节无符号数并有序)
DB ?
YY DB 23
DDD ENDS
CCC SEGMENT
ASSUME CS:CCC,DS:DDD
START:MOV AX,DDD
MOV DS,AX
MOV BX,99
MOV DL,yy
NEXT: CMP XX[BX],DL
JBE INSERT
MOV AL,XX[BX]
MOV XX[BX+1],AL
DEC BX
LOOP NEXT
MOV XX,DL
JMP EXIT
INSERT: MOV XX[BX+1],DL
MOV AH,4CH
INT 21H
CCC ENDS
END START
【题目解析】:开始把定义的DDD放入数据段,把99存入BX,把23存入DL,开始拿23和第100个数据比较,如果这个数据大于23,则把这个数据放到后一个位置,这样直到某个位置的数据小于等于23,这样就在这个数据的后面插入23,然后结束。
在以XX为首地址的内存区,存放100个无符号数,并是按从小至大有序。写出将无符号数23插入并保持依然有序的程序。(插入以后,数据
- 2024-09-08 13:24:24
- 汇编语言程序设计(02321)