VC++使用内联汇编的例子:冒泡法排序(从大到小排序)
来源:互联网 发布:第八届云计算大会 编辑:程序博客网 时间:2024/05/18 15:04
如果明白了冒泡排序的原理,从大到小或是从小到大,其实实现是相似的道理,如果每次排序都把最小的放在最后面,这样的话,循环下来,就是从大到小了,这里采用VC++内联汇编的方式实现,因为想学习一下内联汇编这种方法。
/* 使用内联汇编,从大到小排序。 */#include <iostream>using namespace std;#define MAX_SIZE20int array[MAX_SIZE]={86,73,12,66,88,98,102,33,36,23,106,25,32,26,98,97,42,53,6,83};void main(){int *p;p = &array[0];p--;__asm{movesi,p;movecx,MAX_SIZE;_LOOP1:mov edx,ecx;dec edx;jz _EXIT;_LOOP2:mov eax,[esi+ecx*4];mov ebx,[esi+edx*4];//本身不需要比较cmp ebx,eax;//谁小谁放在最后面jnb _NOCHG;mov [esi+ecx*4],ebx;mov [esi+edx*4],eax;//交换_NOCHG:dec edx;jnz _LOOP2;dec ecx;jmp _LOOP1;_EXIT:}cout<<"使用内联汇编,从小到大排序:"<<endl;for(int i=0;i<MAX_SIZE;i++)//打印排序cout<<array[i]<<" ";cout<<endl;system("pause");}
运行效果如下:
0 0
- VC++使用内联汇编的例子:冒泡法排序(从大到小排序)
- VC++使用内联汇编的例子:冒泡法排序(从小到大)
- 输出从大到小排序的成绩(冒泡排序法)
- 汇编编写的 冒泡排序
- 汇编版,冒泡排序法
- S3C2440冒泡排序(汇编)
- 汇编从大到小排序
- VC中使用C内联汇编小例子
- 从大到小排序(区分顺序排序和冒泡排序)
- 冒泡排序的一个例子
- Java 冒泡排序的例子
- 使用交换标志的冒泡排序算法汇编源代码
- 字符串数组的冒泡排序,从小到大(冒泡法前几篇有例子)
- 冒泡排序 汇编
- 汇编冒泡排序
- 汇编--冒泡排序
- 汇编实现冒泡排序
- 汇编实现冒泡排序
- WordPress侧边栏,小工具开发与使用
- CentOS中配置国内yum源
- activemq在一台服务器上启动多个Broker
- 欢迎使用CSDN-markdown编辑器
- 使用 xheditor + prettify 做代码高亮的总结
- VC++使用内联汇编的例子:冒泡法排序(从大到小排序)
- 双链表的各种操作 创建 插入 删除 查找
- MyEclipse通过TomCat创建一个简单的Web后台供Android使用
- Python - 单继承与多继承
- Android 百分比布局
- Java的位运算符详解实例——与(&)、非(~)、或(|)、异或(^)
- 第十一周项目8二叉树构造(图示)
- latch: row cache objects:dc_rollback_segments
- 技术点详解---IPSec VPN基本原理