侏儒汇编的 "hello world" 示例或教程?

3
我正在使用nasm编写汇编级别的人类可读编程语言。 我注意到Dwarf调试是开发它的必要组成部分。
为了使它在以后能够自我托管,不仅需要编译为ELF,还需要支持Dwarf,以使调试变得可行。 对于ELF,有一个精彩的nasm示例,展示如何制作ELF头文件: http://www.muppetlabs.com/~breadbox/software/tiny/teensy.html http://blog.markloiseau.com/2012/05/tiny-64-bit-elf-executables/ 我想知道是否有或者能否制作类似于DWARF的示例hello world程序, 其中包括与gdb一起使用所需的DWARF部分。 如果有这样的示例,将更容易理解DWARF,而不是阅读大多数涉及C的晦涩文档。 我找到的最接近的是IBM的指南,其中有一个小程序,可以按函数选择性地进行dwarf转储。 www.ibm.com/developerworks/library/os-debugging/
无论如何,如果您能制作一个nasm hello world dwarf示例, 我相信世界会非常感激,因为它将使dwarf格式更易于理解。 也许有人甚至能够在fasm或其他汇编器中实现它。
1个回答

1
如果您不介意深入了解一下,gdb测试套件中有一个简单的“DWARF汇编器”。请参见src/gdb/testsuite/lib/dwarf.exp。它非常容易理解,尽管它的名称是汇编器,但它会输出汇编代码。您可以使用grep命令搜索测试套件的其余部分,以查看如何使用它的示例。

嗯,是的,尽管它可能是一个矮人汇编器,但它是用C语言编写的。 也许可以使用它和DWARF手册, 按要求构建一个nasm汇编文件。 我还需要一些时间来编码, 但如果几个月内没有nasm示例, 我会自己制作这样的nasm示例,如果我能做到的话。 - Logan Streondj

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接