我经历了几天完成一个程序,没有进行调试,并且在我做的一个问题上,ppl建议我使用可以像VS studio一样逐行调试的调试工具。 我刚刚熟悉使用CLI。 (在VirtualBox上使用Ubuntu)以及寻找某人为我提供使用调试工具的步骤。为了以防万一,我使用NASM和Gcc工具。我使用它们就像下面的那些。如何在ASM中进行调试? (Ubuntu)
nasm -f elf search.asm (this makes search.o)
gcc -o search search.o asm_io.o (I use the external file to use some functions)
./search
我在[x86 tag wiki](http://stackoverflow.com/tags/x86/info)中放了一小段用于使用GDB调试asm的命令。如果你还没有使用其他语言的gdb,那么你一般需要学习gdb。我绝对同意调试器对于asm必不可少的建议。你不能像在高级语言中一样分散调试'printf'调用,因为即使调用一个函数也会影响你的寄存器(并且很容易引入新的错误,并且某些函数的优化方式只适用于叶函数...) –
'gcc'命令只能在32位系统上运行。在一个64位系统上,你需要用'gcc -m32'连接由'nasm -felf'创建的32位对象。请参阅[本文](http://stackoverflow.com/questions/36861903/assembling-32-bit-binaries-on-a-64-bit-system-gnu-toolchain/36901649#36901649)了解有关使用NASM构建信息和gcc。 –
它听起来像你在问你在哪里可以找到一个教程 –