导航:首页 > 编程语言 > 单片机排序程序

单片机排序程序

发布时间:2024-11-08 07:05:51

『壹』 51单片机汇编语言-请编写程序将内部RAM 40H到4FH 中的16个数据按从小到大顺序重新排列。 尽量简单一点的

冒泡排序程序如下:

ORG 0000H
LCALL SORT ; 跳转到排序程序

SORT: ; 数据冒泡排序程序
MOV R6, #16 ;参加排序数据的总个数
DEC R6 ; 比较次数 比 数据总数 少 1

L1:
MOV R0, #40H ; 把数据的起始地址40h付给R0
MOV A, R6 ;调整比较次数
MOV R7, A
CLR F0 ; 清交换标志

L2: ;比较
MOV A, @R0 ; 取前一个数
INC R0
MOV B, @R0 ; 取后一个数
CJNE A, B, L3 ; 前面的数 与 后面的数 比较, 前-后

L3: ;判断、处理
JC N_JH ; 后面的数 大于 前面的数,不交换
XCH A,B ; 否则前后两数交换存放
MOV @R0,A
DEC R0
MOV @R0,B
INC R0
SETB F0 ; 设交换标志

N_JH:
DJNZ R7, L2 ; 没有比较完,就继续
JNB F0, L_END ; 没有交换过,就结束
DJNZ R6, L1

L_END:
SJMP $ ; 排序完成。

;结果是:
;40H中存放着最小的数;
;4FH中存放着最大的数。

『贰』 使用单片机汇编语言冒泡法排序

一、实验要求
给出一组随机数,将此组数据排序,使之成为有序数列
二、实验目的
1.了解数据排序的简单算法。
2.了解数列的有序和无序概念
三、实验说明
有序的数列更有利于查找。本程序用的是“冒泡排序”法,算法是将一个数与后面的
数相比较,如果比后面的数大,则交换,如此将所有的数比较一遍后,最大的数就会在
数列的最后面。再进行下一轮比较,找出第二大数据,直到全部数据有序。
四、程序框图

Size equ 10 ; 数据个数
Array equ 50h ; 数据起始地址
Change equ 0 ; 交换标志

Sort:
mov r0, #Array
mov r7, #Size-1
clr Change
Goon:
mov a, @r0
mov r2, a
inc r0

mov B, @r0
cjne a, B, NotEqual
sjmp Next
NotEqual:
jc Next ; 前小后大, 不交换

setb Change ; 前大后小, 置交换标志
xch a, @r0 ; 交换
dec r0
xch a, @r0
inc r0
Next:
djnz r7, Goon
jb Change, Sort
ljmp $

end
引自:伟福单片机开发平台软件实验

『叁』 编写简单的单片机c语言程序 1、指定数组找最大值 2、排序

就是一般的排序算法,与查找算法一样,这个的都不会吗
float
a[3],max=0;
for(i=0;i<=2;i++)
{
printf("册毕Please
enter
the
mark:");
scanf("%f"敬姿纳,&a[i]);
if(max<a[i])
{
max=a[i];maxnum=i+1;}
}
printf("the
number
of
the
highest
is
%d\n",maxnum);
for(i=0;i<=2;i++)
if(max==a[i])
if(i+1!=maxnum)
printf("the
number
of
the
highest
is
%d\n",i+1);
排序
#include<stdio.h>
int
sort(int
num[5]);
void
main()
{
int
numm[5],i,a;
for
(i=0;i<5;i++)
scanf("%d",&numm[i]);
sort(numm);
//亮没调用排序
for
(i=0;i<5;i++)
printf("%d
",numm[i]);
}
int
sort(int
num[5])
{
int
m,n,t;
for
(m=0;m<4;m++)
for(n=m+1;n<5;n++)//冒泡排序
{
if
(num[m]<num[n])
{
t=num[n];
num[n]=num[m];
num[m]=t;
}
}
return
1;
}

阅读全文

与单片机排序程序相关的资料

热点内容
微信版本开心消消乐下载 浏览:106
手机数据线材料检测有哪些方面 浏览:305
win10kb4019472失败 浏览:749
编程质数怎么算 浏览:330
赤月传说召唤神兽升级 浏览:367
前家公加我微信 浏览:415
linux显示一个文件最后几行 浏览:75
放在桌面的文件能在硬盘里找到吗 浏览:553
clash手机无法添加配置文件 浏览:815
linux文件拷贝权限变化 浏览:1000
网络运营分析工作周期 浏览:202
ps2甲斗王文件下载 浏览:403
k3配置文件错误 浏览:395
恶魔岛电影网站为什么关闭 浏览:786
网络卖牛肉如何举报 浏览:962
编程怎么控制电脑开口说话 浏览:584
在哪个网站上查询工商信息 浏览:196
CADI格式文件用什么软件打开 浏览:899
js禁用多行文本框 浏览:716
河北名扬网络有限公司工作怎么样 浏览:575

友情链接