请各位高手帮我看一下这段代码
题目要求:在从1000H开始存有32H个正数,现在将其从小到大排序,并将排序结果存于2000H开始的片外存储器中。我的代码如下:ORG1000HSTART:MOVR3,#...
题目要求:在从1000H开始存有32H个正数,现在将其从小到大排序,并将排序结果存于2000H开始的片外存储器中。
我的代码如下:
ORG 1000H
START:
MOV R3,#00H
MOV R5,#00H
MOV R6,#32H
MOV R7,#32H
ZZ:MOV DPTR,#1000H
MOVX A, @DPTR
MOV 2AH,A
INC DPTR
UU:MOVX A,@DPTR
SUBB A,2AH
JC KK
INC DPTR
DJNZ R7,UU
AJMP SS
KK:MOV 2AH,A
MOV R5,DPL
INC DPTR
DJNZ R7,UU
SS: MOV DPL,R5
MOV A,#00H
MOVX @DPTR,A
MOV DPL,R3
MOV DPH,#20H
INC R3
MOV A,2AH
MOVX @DPTR,A
DJNZ R6,ZZ
END
这程序是否正确,不正确的话顺便帮我改一下。 展开
我的代码如下:
ORG 1000H
START:
MOV R3,#00H
MOV R5,#00H
MOV R6,#32H
MOV R7,#32H
ZZ:MOV DPTR,#1000H
MOVX A, @DPTR
MOV 2AH,A
INC DPTR
UU:MOVX A,@DPTR
SUBB A,2AH
JC KK
INC DPTR
DJNZ R7,UU
AJMP SS
KK:MOV 2AH,A
MOV R5,DPL
INC DPTR
DJNZ R7,UU
SS: MOV DPL,R5
MOV A,#00H
MOVX @DPTR,A
MOV DPL,R3
MOV DPH,#20H
INC R3
MOV A,2AH
MOVX @DPTR,A
DJNZ R6,ZZ
END
这程序是否正确,不正确的话顺便帮我改一下。 展开
1个回答
展开全部
;改好了,仿真实验成功。
ORG 00H
START:
MOV A, #48H
MOV DPTR, #1000H
MOV R7, #32H
UU:
MOVX @DPTR, A
INC DPTR
DEC A
DJNZ R7, UU
;---------------上面各条,从1000H开始,存放了一批递减的数据
NOP
CALL X_SORT ;调用排序子程序
NOP ;上面数据即递增排好
NOP
SJMP $
;---------------下面是排序子程序
X_SORT:
MOV R7, #32H
ZZ:
MOV 2AH, R7
MOV DPTR, #1000H ;前一数字的地址
SS:
MOV R6, DPL ;保存前一数字的地址R,
MOVX A, @DPTR
MOV 2BH, A ;保存前一数字
INC DPTR
MOVX A, @DPTR ;取出后一个数字
CJNE A, 2BH, $+3
JC KK
MOV DPL, R6 ;恢复前一地址
MOVX @DPTR,A ;保存后一数字
MOV A, 2BH ;找回前一数字
INC DPTR ;后一地址
MOVX @DPTR,A ;保存
KK:
DJNZ 2AH, SS
DJNZ R7, ZZ
RET
;---------------排序结束
END
ORG 00H
START:
MOV A, #48H
MOV DPTR, #1000H
MOV R7, #32H
UU:
MOVX @DPTR, A
INC DPTR
DEC A
DJNZ R7, UU
;---------------上面各条,从1000H开始,存放了一批递减的数据
NOP
CALL X_SORT ;调用排序子程序
NOP ;上面数据即递增排好
NOP
SJMP $
;---------------下面是排序子程序
X_SORT:
MOV R7, #32H
ZZ:
MOV 2AH, R7
MOV DPTR, #1000H ;前一数字的地址
SS:
MOV R6, DPL ;保存前一数字的地址R,
MOVX A, @DPTR
MOV 2BH, A ;保存前一数字
INC DPTR
MOVX A, @DPTR ;取出后一个数字
CJNE A, 2BH, $+3
JC KK
MOV DPL, R6 ;恢复前一地址
MOVX @DPTR,A ;保存后一数字
MOV A, 2BH ;找回前一数字
INC DPTR ;后一地址
MOVX @DPTR,A ;保存
KK:
DJNZ 2AH, SS
DJNZ R7, ZZ
RET
;---------------排序结束
END
杭州一知智能科技有限公司
2022-03-17 广告
2022-03-17 广告
电话机器人主要就是用来模拟人工通话的一组程序,一般由,CRM系统,语义识别,转换文字,话术体系,这是软的部分,再加上底层软交换和通信模块一起,合并起来就是一套完整的电话机器人系统。电话机器人可以代替真人进行电话工作的,像是电话营销、售后回访...
点击进入详情页
本回答由杭州一知智能科技有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询