#include <stdio.h>
#include <stdlib.h>
#include <iostream.h>
unsigned int COUNT=10;
void initArray(unsigned int* array);
void printWayneArray(unsigned int *myArray,int elementNumber);
int main()
{
unsigned int myArray[10];
for(int i=0;i<10;i++)
{
myArray[i]=i;
cout<<myArray[i]<<'\t';//即便是把int数据赋值给unsigned int数据,输入结果仍然是:0123456789.
}
cout<<endl;
initArray(myArray);
printWayneArray(myArray,10);
return 0;
}
void initArray(unsigned int* array)
{
_asm
{
mov ecx, COUNT //ecx(32位cx)存放了循环变量(循环10次)
mov ebx, array //ebx存放了数组首地址。
_init: mov dword ptr [ebx],0 //dword应该是32位,这句代码的意思应该是给数组的第一个元素赋值为0.
add ebx,4 //修正偏移量,使ebx指向数组中的下一个元素。
loop _init
}
}
void printWayneArray(unsigned int *myArray,int elementNumber)
{
for(int i=0;i<elementNumber;i++)
{
cout<<myArray[i]<<'\t';
}
cout<<endl;
}
vc6.0 c语言调用汇编
最新推荐文章于 2023-10-01 15:36:32 发布