C51单片机使用汇编语言实现降序排序

运行代码:

1021ef56a8be46d0ab495f8b945b3b01.png

 

ORG 0000H

JMP MAIN

ORG 0030H

 

LEN EQU 6FH

BLOCK EQU 71H

 

MAIN:

MOV A,70H

MOV R2,LEN

MOV R1,#70H

MOV R0,#BLOCK

 

LOOP:

CLR C

SUBB A,@R0

JC NEXT;若当前的值<数据块内的数据,则跳转到NEXT

JNC NEXT1;若当前的值>数据块内的数据,则跳转到NEXT1

 

NEXT:

ADD A,@R0;恢复A的值

XCH A,@R0;若A的值小于R0的值,则交换A和R0的位置

MOV @R1,A;再把累加器A中的内容移动到地址中

MOV A,@R0

INC R0;指针

INC R1;指针

DJNZ R2,LOOP

JMP MAIN;遍历无限次

SJMP $

 

NEXT1:

ADD A,@R0;恢复A的值

MOV @R1,A

MOV A,@R0

INC R0

INC R1

DJNZ R2,LOOP

JMP MAIN;遍历无限次

SJMP $

END

 

运行结果:

54328ddf6603415684427eeea9855ce6.png 

 

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值