我们的老师教过汇编语言,80x86的。大概长这个样子:
1 .386
2 .model flat,stdcall
3 .stack 4096
4 ExitProcess proto,dwExitCode:dword
5
6 .data
7 sum dword 0
8
9 .code
10 main proc
11 mov eax,5
12 add eax,6
13 mov sum,eax
14
15 invoke ExitProcess,0
16 main endp
17 end main但是,当我用gcc -S编译一段C语言源程序,打开生成的代码后,我开始怀疑自己到底有没有学过汇编语言。样子和以前学过的类似,但是每当试图理解代码的意思,都会觉得老师骗了我。事实证明老师并没有欺骗我,GCC的汇编器和我们平时用的MASM是不一样的。我把总结出来的一些知识整理出来,写在了下面的PDF里。