一道汇编语言设计题

来源:百度知道 编辑:UC知道 时间:2024/05/14 14:15:05
在BUF开始有一个字节型数组,共有1000个元素。
编写一个程序将负数传送到BUF1开始的单元。

前面的定义段的就不写了。。麻烦
从主程序开始。。。
mov ax,data
mov ds,ax
mov cx,1000
lea di,buf
lea si,buf1
again:
mov al,[di]
mov [si],al
inc di
inc si
loop again
mov ah,4ch
int 21h

data segment
BUF db 0,1,-1,2,-2,3,-3,4,-4,5,......;共1000个数
BUF1 db 1000 dub (0)
data ends

code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov es,ax
cld
lea si,BUF
lea di,BUF1
mov cx,1000
next:lodsb
or al,al
jns Q2
stosb ;只存负数
Q2:loop next
mov ah,1
int 21h
mov ah,4ch
int 21h
code ends
end start