Advertisement

编写一个一维数组反转器用汇编代码实现

阅读量:

程序需求:编写一个完整的代码,实现将数组array中的元素进行逆序排列,且要求程序中所附加的变量数量最少。数据段的定义如下:
.data
array dword 12,4, 168,122,-33,56,78,99,345, 66,-5
编程思路:采用两个指针,分别指向数组的第一个和最后一个元素,并交换首尾元素的位置;通过loop循环指令实现操作。在汇编语言中,esi被用作起始指针,edi作为结束指针,而ecx则用于控制循环的次数。

开发环境

Windows 10操作系统配合Visual Studio 2017开发环境

C语言代码实现如下:

复制代码
 #include <stdio.h>

    
 int array[] = { 12,14,168,122,-33,56,78,99,345,66,-5 };
    
 int main()
    
 {
    
 	int i = 0;
    
 	int j = (sizeof(array) / 4) - 1;
    
 	for (int count = 0; count < sizeof(array) / (4 * 2); count++)
    
 	{
    
 		int tmp = array[i];
    
 		array[i] = array[j];

全部评论 (0)

还没有任何评论哟~