将 C 代码编译为 MIPS 汇编
我编写了一个 C 程序,我需要在 MIPS 汇编代码中查看它。
如何安装或操作将*.c 文件转换为*.txt 或*.something_else 的软件以查看其MIPS 汇编代码?
我的操作系统是Linux。
多谢 !!
顺便说一句,我的代码是:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define SIZE 128
int main ()
{
char mychar , string [SIZE];
int i;
int count =0 ;
printf ("Please enter your string: \n\n");
fgets (string, SIZE, stdin);
printf ("Please enter char to find: ");
mychar = getchar();
for (i=0 ; string[i] != '\0' ; i++ )
if ( string[i] == mychar )
count++;
printf ("The char %c appears %d times\n" ,mychar ,count);
return 0;
}
I wrote a C program that I need to see it in MIPS assembly code.
How do I install or operate a software that takes *.c file to be *.txt or *.something_else to see its MIPS assembly code ?
My OS is Linux.
Thanks a lot !!
BTW my code is:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define SIZE 128
int main ()
{
char mychar , string [SIZE];
int i;
int count =0 ;
printf ("Please enter your string: \n\n");
fgets (string, SIZE, stdin);
printf ("Please enter char to find: ");
mychar = getchar();
for (i=0 ; string[i] != '\0' ; i++ )
if ( string[i] == mychar )
count++;
printf ("The char %c appears %d times\n" ,mychar ,count);
return 0;
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您需要的是 MIPS 交叉编译器,除非您在 MIPS 机器上运行 Linux,在这种情况下您需要常规的 MIPS 编译器。 这里是在 Linux 上设置交叉编译器的方法。
编译完成后,您将需要查看 MIPS 反汇编。 objdump 可以帮助你。
What you want is a MIPS cross-compiler, unless you're running Linux on a MIPS box, in which case you want a regular MIPS compiler. Here is a howto for setting up a cross compiler on Linux.
Once you've compiled it, you'll want to see the MIPS disassembly. objdump can help you there.
您需要安装 MIPS 交叉编译库,然后需要将
-S
和-march=mips*
选项之一传递给 gcc。You need to install a MIPS cross-compile library, and then you need to pass
-S
and one of the-march=mips*
options to gcc.您可以使用 Dan Kegels 优秀且易于使用的cross-tool来编译您自己的MIPS交叉编译器。
You can use Dan Kegels' excellent and easy to use cross-tool to compile your own MIPS cross compiler.