x86汇编语言的代码自动完成

时间:2013-02-14 20:27:45

标签: visual-studio-2010 assembly masm

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

2 个答案:

答案 0 :(得分:3)

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

RADASM 是此类IDE的一个示例。

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

在大型装配项目中可能有数千个标签,因此这套内容的快速导航非常有用。

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

这是我的项目,但我认为我没有偏见。

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

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

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

使用固定的API列表也是不可能的,因为Fresh IDE不受某些特定API的约束,但是针对几个支持的操作系统的应用程序编程,甚至是OS开发。

答案 1 :(得分:-1)

我不知道这是否提供了自动完成功能,但是如何在X86上使用REPL呢? http://en.wikipedia.org/wiki/Read–eval–print_loop

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