【问题标题】:Making a Listing File using /fa in Visual Studio 2013?在 Visual Studio 2013 中使用 /fa 制作列表文件?
【发布时间】:2014-04-25 00:26:58
【问题描述】:

我的第一篇文章时间到了!我目前正在尝试使用 MARS 模拟器将 C++ 代码转换为程序集以进行分配,并且我想使用 Visual Studio 必须创建一个 .asm 文件的/fa filename 函数来获得一些预览我需要做的事情(对于组装来说非常陌生,教授在教授任何关于它的东西方面都不太出色,所以我遇到了困难)。我的问题是,我究竟如何在 Visual Studio 中使用 /fa filename?我转置的C++代码如下:

#include <iostream>
using namespace std;

void printBar (int n) {
   int k;
   for (k = 1; k <= n; k++) {
      cout << '*';
   }
   cout << endl;
}

int main () {
   int numPts;
   int value;
   int j;
   cin >> numPts;
   for (j = 1; j <= numPts; j++) {
      cin >> value;
      printBar (value);
   }
   return 0;
}

我只是没有任何使用 Visual Studio 的经验,所以我不太明白将列表文件的命令放在哪里。我在调试过程中尝试过使用反汇编程序,但它不像任何可识别的东西。感谢您的帮助!

【问题讨论】:

  • 我相信 Visual Studio 不再支持编译到 MIPS 了。见here
  • 在开始菜单/屏幕上,打开“Visual Studio 工具”,然后运行“开发人员命令提示符”。找到你的源文件。运行cl /FA my_source.cpp。请注意,对于使用 C++ 标准库的 C++ 程序,您将获得大量输出,因为很多标准库代码都在标头中。使用 C 标准库(printf 和朋友)来简化输出。正如其他人所指出的,Visual C++ 不支持以 MIPS 为目标。开发人员命令提示符将为 x86 配置工具;在 Visual Studio 工具下还有其他用于其他目标的快捷方式。
  • 我可以使用旧版本的 Visual Studio 或其他程序来查看可能的 MIPS 输出吗?我已经看到它在 UNIX 中使用 gcc,但这并不能完全解决我的问题。

标签: c++ visual-studio-2013 mips mars-simulator


【解决方案1】:

Visual Studio 2013 不支持编译到 MIPS。如果您有 64 位系统,它可以编译为 ia32 或 x64。

查看 ia32 汇编绝对不会帮助您在 MIPS 汇编中编程,因为这两个指令集非常不同。查看 x64 程序集可能有用。

我认为您在“项目/构建选项”对话框中设置了 /FA 选项,但我没有 VS2013 的副本来确认这一点。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-25
    • 1970-01-01
    • 2015-10-14
    • 2018-04-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多