使用汇编语言

发布网友

我来回答

2个回答

热心网友

我感觉应该是单片机吧!
DATM:
MOV DPTR,#1000H
MOV R0,#0
MOV R1,#0
MOV R2,#0
MOV R3,#0
MOV R7,#20
LOOP:
MOV DPL,R0
INC R0
MOVX A,@DPTR
JNZ LOOP1
MOV DPL,R3
MOVX @DPTR,A
INC R3
SJMP LOOP3
LOOP1:
JNB ACC.7,LOOP2
MOV DPL,R2
MOVX @DPTR,A
INC R2
SJMP LOOP3
LOOP2:
MOV DPL,R1
MOVX @DPTR,A
INC R1
LOOP3:
DJNZ R7,LOOP
RET

热心网友

首先,题目应该有问题。20个字数据,需要的储存空间是20*2=40=28H
如果20个数据全部是正数,保存到1030H开始的储存单元,1030H+28H=1058H,已经保存在负数空间。
mov ax,ds
mov si,1030H
mov di,1050H
mov bp,1070H
mov bx,1000H
mov cx,20
lop1:
mov ax,[bx]
cmp ax,0
jl fushu
jg zhengshu
mov ds:[bp],ax
inc bp
int bp
jmp lop2
fushu:
mov [di],ax
inc di
inc di
jmp lop2
zhengshu:
mov [si],ax
inc si
inc si
lop2:
inc bx
inc bx
loop lop1

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com