天策带怎么加点:汇编求助

来源:百度文库 编辑:中科新闻网 时间:2024/04/28 20:28:29
Data segment at 2000H
Org 0100H
Array DB 0FEH,86H,95H,21H,79H,05H,53H,47H
COUNT EQU $-ARRAY
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
BEGIN:MOV AX,DATA
MOV DS,AX
MOV DX,2
LOP1: MOV CS,COUNT
MOV BX,CX
MOV SI,CX
LOP2: MOV AL,ARRAY[SI-1]
CMP AL,ARRAY[SI-2]
JGE NEXT
XCHG AL,ARRAY[SI-2]
MOV ARRAY[SI-1],AL
MOV BX,CX
NEXT: DEC SI
DEC CX
CMP CX,DX
JGE LOP2
CMO BX,COUNT
JE DONE
INC DX
JMP LOP1
DONE:HLT
CODE ENDS
END BEGIN
程序执行结果:(20100H)=_________,
(20107H)=_________;

呵呵
好好一道填空题,让你写到成了改错题。。。
很明显,最后是问你数组Array的第一个元素Array[0](也就是地址为20100H处的值)和Array的最后一个元素Array[7](也就是地址为20107H处的值).
-------------------------------------
程序大概看了下,应该是道排序的题。从数组最后开始做“冒泡排序”,把后面最小的数向前排。最后的结果,就是一个从小到大的升序数组。
-------------------------------------
OK了。现在楼主可以自己写与答案了吧~
--------------------------------------
(20100H)= 05H
(20107H)= 0FEH