📄 4-23.asm
字号:
4-23题
TITLE 8086 Code Template (for EXE file)
; AUTHOR emu8086
; DATE ?
; VERSION 1.00
; FILE ?.ASM
; 8086 Code Template
; Directive to make EXE output:
#MAKE_EXE#
DSEG SEGMENT 'DATA'
; TODO: add your data here!!!!
A1 DW 1234H,3657H,4098H,3345H,5589H,1111H,8907H,3457H,6678H,2234H
A2 DW 10 DUP(?)
MIN DW ?
I DW ?
DSEG ENDS
SSEG SEGMENT STACK 'STACK'
DW 100h DUP(?)
SSEG ENDS
CSEG SEGMENT 'CODE'
;*******************************************
START PROC FAR
; Store return address to OS:
PUSH DS
MOV AX, 0
PUSH AX
; set segment registers:
MOV AX, DSEG
MOV DS, AX
MOV ES, AX
; TODO: add your code here!!!!
MOV BX,OFFSET A1
MOV DI,OFFSET A2
MOV CX,10
LOP1: MOV AX,[BX]
MOV SI,BX
MOV I,0
LOOP LOP2
JMP LOP5
LOP2: INC I
ADD SI,2
MOV DX,[SI]
CMP AX,DX
JAE LOP3
CMP I,CX
JNZ LOP2
JMP LOP4
LOP3: MOV [SI],AX
MOV [BX],DX
MOV AX,DX
CMP I,CX
JNZ LOP2
JMP LOP4
LOP4: MOV [DI],AX
ADD DI,2
ADD BX,2
JMP LOP1
LOP5: MOV DI,OFFSET A1
MOV SI,OFFSET A2
MOV CX,10
JMP JUST
JUST: MOV AX,[SI]
MOV [DI],AX
ADD DI,2
ADD SI,2
LOOP JUST
MOV AX, 4C00h ; exit to operating system.
INT 21h
; return to operating system:
RET
START ENDP
;*******************************************
CSEG ENDS
END START ; set entry point.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -