2

Visual Studio 是否支持 x86 汇编语言的代码自动完成?我发现自动完成在使用高级编程语言(如 Java 和 C++)时很有用,我想知道 Visual Studio 中的汇编语言是否有类似的功能(例如,键入m可以mov作为建议提供,和打字jj1作为建议提供)。

4

2 回答 2

4

据我所知,唯一为汇编语言提供自动完成功能的 IDE 是那些专门为汇编语言设计的。

RADASM就是这种 IDE 的一个示例。

虽然,汇编自动完成的主要目标不是指令,(因为它们很短且易于输入)而是标签和其他标识符。

在大型装配项目中可能有数千个标签,因此该集合内的快速导航确实非常有用。

Fresh IDE中实现了最先进的自动完成引擎之一。

这是我的项目,但我认为我对这个估计没有偏见。

大多数程序集 IDE 使用固定的 API 标签列表,有时会扫描源文件以制作检测到的标签列表。他们被迫使用这些技巧,因为通常它们是通用 IDE,必须支持多种不同的汇编器和 HLL 编译器。

Fresh IDE 不同 - 它使用 FASM 汇编器运行真正的编译,以收集编译后由汇编器检测到的标识符集。这样,所有标签都可以正确检测,即使是在组装过程中由宏生成的标签,以及它们的值、类型和层次结构。

这种解决方案是被迫的,因为 FASM 具有非常复杂和灵活的宏系统,这使得任何其他检测机制都不可靠。

使用固定的 API 列表也是不可能的,因为 Fresh IDE 并不绑定到某个特定的 API,而是针对多个支持的操作系统甚至操作系统开发的应用程序编程。

于 2013-02-14T21:10:51.260 回答
0

我不知道这是否提供自动完成功能,但是为 X86 使用 REPL 怎么样? http://en.wikipedia.org/wiki/Read–eval–print_loop

GitHub上有一个 https://github.com/rfw/ex86

于 2013-02-14T20:37:43.657 回答