当前位置: 代码迷 >> 汇编语言 >> 求C语言翻译成32位asm解决方案
  详细解决方案

求C语言翻译成32位asm解决方案

热度:8825   发布时间:2013-02-26 00:00:00.0
求C语言翻译成32位asm
请帮我把下面的C语言翻译成32位的DOS汇编,要求是能运行。
C/C++ code
int gacCode[] = {0x0c, 0x0A, 0x13, 0x9, 0x0c, 0x0b, 0x0a, 0x08}; 4  5 int __cdecl KeyGen(char* lpName, int aiLen) 6 { 7     int liTemp = 0; // means esi 8     int i = 3; //just because using VC6,know 3 from ecx == 3 9     int j = 0;10     for(; i11     {12         if(j > 7)13         {14             j = 0;15         }16         liTemp += lpName[i] * gacCode[j];17     }18 19     return liTemp;20 }21 22 23 int main()24 {25     char lszName[] = "abcdefg";26     int liKey = KeyGen(lszName, strlen(lszName));27 28     printf("%i/n",liKey);29     return 0;30 }


------解决方案--------------------------------------------------------
用gcc的话,这样:
gcc -masm=intel -S urcode.c 
这样的话,会得到一份intel风格的汇编代码。
  相关解决方案