在Visual Studio中编写汇编和C
Writing Assembly and C in Visual Studio
我看过很多关于这方面的讨论,但我无法让它发挥作用。也许这些信息已经过时了,或者我可能做错了什么。但是,是否可以在Visual Studio中编写和编译汇编程序集和C代码?
是否有适用于这些语言的基本项目模板,我的意思是,就像有VB、C++和C#项目模板用于创建新项目一样?
我正在使用Visual Studio 2012 Ultimate。我还安装了所有Visual Studio速成版。
是否可以在普通C++项目中编写程序集和/或C代码?
如果这是一个愚蠢的问题,我很抱歉,但我想学习更多的低级语言。我觉得如果我能在更低的水平上了解实际发生的事情,我就能更好地理解很多事情。
需要注意的一点是,如上所述,在为x64编译时不能使用内联程序集。
Visual Studio还包括ml.exe
(32位)和ml64.exe
中的MASM汇编程序。这可能有助于开始使用它们。
开箱即用,VS不包括独立的汇编程序。您可以在C或C++源代码中编写内联程序集,但仅适用于x86目标。对于内联汇编之外的任何东西,您都需要使用一个单独的汇编程序。当然,您可以将汇编程序生成的对象文件链接到您的MSVC项目中。
至于C,MS编译器将编译大致遵循C89标准的代码。但微软一再表示,他们不会将C编译器更新到新的标准。如果MS支持足够了,只需在项目中包含扩展名为.c的文件并进行编译即可。否则,如果MS的支持对您来说还不够,那么您将考虑外部编译器。
更新
我被纠正了。Visual Studio确实附带了独立的Microsoft汇编程序MASM。
如果你只想为一个函数实现一些小东西,你可以通过内联汇编来实现。如果您想编写更复杂的函数,那么您也可以使用外部汇编程序。在这种情况下,您可以将源文件的属性配置为使用外部命令,并且您必须自己编写命令行,以及指定源和目标。
- Visual Studio 2015:Extern "C" 和 "export" 关键字
- 为cl.exe(Visual Studio代码)指定命令行C++版本
- 试图在visual studio上用C++创建一个桌面应用程序
- 如何在MS Visual Studio 2019中运行QT UI
- 如何使用Visual Studio 2017在C++中为参数化对象数组使用唯一指针
- Visual Studio Code - C++ Debugger 無法啟動
- Visual C++ constexpr Hints
- 为什么它不适用于Visual 2019的原因
- Visual Studio 2019:插入多个C++风格的单行注释
- 关于Visual Studio 2017中有关ConstexPR表达式的汇编问题
- 在Visual Studio中相互依赖的项目的并行汇编
- 从命令行中汇编Visual C
- 是否可以使用内联汇编在 Visual Studio 2010 c++ 中查找代码的地址?
- Visual Studio Express 2010 C++反汇编调试
- 在Visual Studio中编写汇编和C
- 如何将处理器速度的汇编代码移植到Visual Studio 2008
- visual MSVC汇编函数参数
- visual如何在64位C++代码中使用暂停汇编指令
- 内联汇编代码不能在Visual c++ 2010 Express中编译
- 如何在visual c++中使用TSL汇编指令处理线程