楼主对汇编一点不懂的话,很难学好C的,建议平时看一下汇编语言。
楼主没有给出所用的C编译器的软件名称,所以本人泛泛说一下。
一部分C集成环境在调试时,会生成带有调试信息的可执行文件,这样在调试时会根据C源代码进行一步步的执行,但对于一些系统级的调用,如果单步调试的话,会进入其中的子程序,这样只能是用汇编语言(有对应机器码)
如果没有生成高级语言调试信息的话,那肯定只能是用汇编语言调试
而有的的编译器则只能进行汇编语言级的调试
所以楼主这种情况是正常的、常见的,楼主应该附带看一下汇编语言和 *** 作系统、内存储器这样的基本知识。
喜欢楼主能够得到提高。
如果是VC则在编译器命令行参数再加 /FA 则会生成汇编代码。如果参数是 /FAs 则会同时将源码和汇编代码。/FA 程序集代码;.asm
/FAc 机器码和程序集代码;.cod
/FAs 源代码和程序集代码;.asm
/FAcs 机器码、源代码和程序集码;.cod
/Fa的用法
/Fa 为编译中的每个源代码文件创建一个源文件.asm。
/Fa文件名 将文件名.asm 放到当前目录中。仅在编译单个源代码文件时有效。
/Fa文件名.扩展名 将文件名.扩展名放到当前目录中。仅在编译单个源代码文件时有效。
/Fa目录\ 为编译中的每个源代码文件创建一个源文件.asm,并将其放到指定目录中。请注意必须有后缀反斜杠。只允许使用当前磁盘上的路径。
/Fa目录\文件名 将文件名.asm 放到指定目录中。仅在编译单个源代码文件时有效。
/Fa目录\文件名.扩展名 将文件名.扩展名放到指定目录中。仅在编译单个源代码文件时有效。
如果你是用gcc 或 g++编译器,如dev c++则加入命令行参数 -S 即可
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)