主题:请大家帮忙
ks__z
[专家分:0] 发布于 2007-11-25 15:41:00
将正数插入一个已经排好序的字数组的正确位置
回复列表 (共2个回复)
沙发
ccpp [专家分:9360] 发布于 2007-11-25 20:00:00
既然插入到正确位置,那么后面的元素就得后移
typesize equ 2
.data
array word 1,2,3,4,6,7
COUNT = ($ - array)/typesize
word ? ;保留数组后一个位置
x word 5
.CODE
START:
mov ax,@data
mov ds,ax
mov cx,COUNT
mov si ,offset array
cld
L1:
lodsw
cmp x,ax
jl L2
loop L1
jmp quit
L2:
mov bx,sizeof array - typesize
L3: ;数组后移
mov ax, array[bx]
mov array[bx+typesize], ax
sub bx,typesize
loop L3
;插入
mov ax,x
mov [si-typesize],ax
quit:
mov ah,4ch ;结束,可以修改al设置返回码
int 21h
END START
板凳
ks__z [专家分:0] 发布于 2007-11-26 22:37:00
谢谢你了
我来回复