/*
C语言排序——32个有符号8位二进制数从小到大排列到片内RAM 30H~4FH
*/
#include<reg51.h>
#include<stdio.h>
char data a[32] _at_ 0x30; //最终排序结果存放在片内RAM 30H~4FH单元
void main()
{
char b[32] = { //数组装载待排序数据
1,3,9,2,17,4,11,6,
5,20,100,64,21,14,
79,35,92,7,91,23,65,
16,13,18,18,73,65,
101,27,19,62,69
};
int i,j,t = 0;
for(i=0;i<32;i++) //将程序数组里的待排序数据搬移至片内RAM 30H~4FH
a[i] = b[i];
for(j=0;j<31;j++) //外层循环控制比较单元地址上限
for(i=0;i<31-j;i++) //内层循环将每次循环的最大值转移至高地址处
if(a[i]>a[i+1]) //比较大小,大者靠后,小者靠前
{
t = a[i];
a[i] = a[i+1];
a[i+1] = t;
}
while(1);
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
山东大学单片机原理与应用实验工程文件 详解博客地址:https://blog.csdn.net/m0_52316372/article/details/125629780 第1部分 开发环境及纯软件仿真实验 2.3C语言程序实验 片内RAM30H开始的32个单元中分布着随机的有符号8位二进制数,按从小到大的顺序进行排序,排序后的数据仍然保存到30H开始的32个单元中(低地址存放小数据)
资源详情
资源评论
资源推荐
收起资源包目录
MCUdemo2.zip (13个子文件)
MCUdemo2
Cyuyanpaixu.uvproj 14KB
cyuyanpaixu.c 871B
Objects
Cyuyanpaixu.build_log.htm 963B
STARTUP.obj 819B
cyuyanpaixu.obj 2KB
Cyuyanpaixu.lnp 120B
Cyuyanpaixu 3KB
cyuyanpaixu.__i 137B
Cyuyanpaixu.uvopt 6KB
STARTUP.A51 6KB
Listings
cyuyanpaixu.lst 2KB
Cyuyanpaixu.m51 5KB
STARTUP.lst 14KB
共 13 条
- 1
timerring
- 粉丝: 14w+
- 资源: 61
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0