⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 asm2.cpp

📁 《游戏编程指南》配套代码 [涉及平台] VC++ [作者] void [文件大小] 1761KB [更新日期] 2005-10-26
💻 CPP
字号:
//下面看一个汇编的综合运用:冒泡排序。
#include <iostream>
using namespace std;

#define	array_size 10

int a[array_size]={42, 73, 65, 97, 23, 59, 18, 84, 36, 6};

void main()
{
	int *p;
	p=&a[0];
	p--;

	__asm
	{
		mov esi,p;
		mov ecx,array_size;
_outloop:
		mov edx,ecx;
_inloop:
			mov eax, [ esi+ecx*4 ]; //一个int占4字节
		mov ebx, [ esi+edx*4 ];
		cmp eax, ebx;
		jnb _noxchg; //不交换
		mov [ esi+ecx*4 ], ebx;
		mov [ esi+edx*4 ], eax;
_noxchg:
			dec edx;
		jnz _inloop;
		loop _outloop;
	}

		for (int i=0;i<10;i++)
			cout<<a[i]<<" ";
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -