📄 exam503.asm
字号:
;将DAI为首地址N个连续字节单元的内容,
;依次搬移到以DA2为首地址的连续单元
data segment
org $+40h
da0 db 100 dup(?)
org $+40h
da1 dw da0+8
da2 dw da0+3
count dw 02h ;100H/2
data ends
stack1 segment para stack
dw 80h dup(0)
stack1 ends
coseg segment
assume cs:coseg, ds:data, ss:stack1
move: mov ax, data
mov ds, ax
mov es, ax
mov cx, count ;取搬移字节数
mov si, da1 ;取源数据块首地址
mov di, da2 ;取目的数据块首地址
cmp si, di ;比较两首地址的大小
jz next ;相等不用搬移,退出
ja low1 ;源数据块首地址高
add si, cx
add di, cx
hig: std ;由高向低搬移
rep movsw
jmp next
low1: cld ;由低到高搬移
rep movsw
next: mov ah, 4ch
int 21h
coseg ends
end move
;程序的简化格式指令代码
;.model small
;.stack 200h
;.data
; x db -18
; y db ?
;.code
;start: mov ax, @data
; mov ds, ax
; mov al, x
; cmp al, 0
; jge loop1
; mov al, -1
; mov y, al
; ret
;loop1: je loop2
; mov al, 1
; mov y, al
; ret
;loop2: mov al, 0
; mov y, al
; ret
;end start
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -