首页 > 试题广场 >

你的作业是写一个执行冒泡排序的Y86-64程序。下面这个C函

[问答题]

你的作业是写一个执行冒泡排序的Y86-64程序。下面这个C函数用数组引用实现冒泡排序,供你参考:

/* Bubble sort:Array version*/
void bubble_a(long *data, long count) {
  long i, last;
  for (last = count-1; last >0; last--) {
      for (i = 0; i < last; i++)
         if (dataCi+1] < data[i]) {
            /*Swap adjacent elements*/
            long t=data[i+1];
            data[i+1]=data[i];
            data[i]=t;
         }
      }
  }

A.书写并测试一个C版本,它用指针引用数组元素,而不是用数组索引。

.B.书写并测试一个由这个函数和测试代码组成的Y86-64程序。你会发现模仿编译你的C代码产生的x86-64代码来做实现会很有帮助。虽然指针比较通常是用无符号算术运算来实现的,但 是在这个练习中,你可以使用有符号算术运算。

这道题你会答吗?花几分钟告诉大家答案吧!