各位帮帮忙 看看汇编代码对不对或者该怎么做 = =
do mo a ri ga do
第一个 从0500H这个单元起的1000个数,找出最小的,放入1000H中
[size=18px]DATAS SEGMENT DATAS ENDSSTACKS SEGMENTSTACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART PROC FAR PUSH DS MOV AX,0 PUSH AX MOV AX,DATAS MOV DS,AX MOV BX,OFFSET 0500H MOV CX,999 MOV AL,[BX]AGAIN: INC BX CMP AL,[BX] JLE NEXT MOV AL,[BX]NEXT: DEC CX JNZ AGAIN MOV BX,OFFSET 1000H MOV [BX],AL RETSTART ENDP CODES ENDS END START[/size]
[size=18px]DATAS SEGMENT STRING DB '#','1','2','3','$' DATAS ENDSSTACKS SEGMENTSTACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX LEA BX,STRING MOV CX,0AGAIN: INC BX MOV AL,[BX] CMP AL,'$' JNZ NEXT JMP EXITNEXT: INC CX JMP AGAINEXIT: MOV AH,4CH INT 21HCODES ENDS END START[/size]
[size=18px]DATAS SEGMENT NUMBER DB 8,01H,02H,03H,04H,01H,02H,03H,04H COUNT DB ? DATAS ENDSSTACKS SEGMENTSTACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX MOV BX,OFFSET NUMBER MOV AX,[BX] MOV BP,AX MOV COUNT,AL MOV DI,OFFSET NUMBER+[BP]+1 DIV CL MOV BP,AX MOV SI,OFFSET NUMBER+[BP] AGAIN: MOV AL,[SI] MOV [DI],AL INC DI INC SI DEC CL JNZ AGAIN MOV AH,4CH INT 21HCODES ENDS END START[/size]