C到NASM的转换

时间:2015-10-26 21:53:57

标签: c bash assembly nasm

我试图找到一种方法将简单的C代码转换为NASM程序集。我尝试使用objconv并下载并解压缩并构建它,因为我使用的是MAC;然而,它似乎并没有起作用。我一直得到" -bash:objconv:命令未找到"。有没有人知道另一种方式或者可以帮助我解决-bash错误。

2 个答案:

答案 0 :(得分:2)

Bash是一个程序,它接收您在终端中键入的单词并启动其他程序。如果它报告错误,那是因为它无法找到您要运行的程序(至少在这种情况下)。

您需要找到objconv的预打包安装,或者您需要完成工作以便集成"你自己的objconv副本。

如果您可以识别要运行的可执行文件(可能称为objconv),则需要将其添加到路径中。最简单的方法(如果它只适合你)是验证你的〜/ .bashrc或〜/ .bashprofile有一行看起来像

PATH=$PATH:${HOME}/bin

不要担心它看起来是否完全一样。只需确保$ {HOME} / bin或〜/ bin(〜是$ {HOME}的简短版本)。

如果你有,那么输入命令

cd ~/bin
ln -fs ../path/to/objconv

您将在家庭二进制目录中创建一个软链接(一种文件类型),该程序应该可以在命令行中使用。

如果您创建了该文件,并且上面没有任何错误,但命令行无法使用,您可能需要在" real"上设置可执行位。 (不是链接)objconv。

的副本

如果这不起作用,那么现在你应该为更好,更具体的问题做好准备。

答案 1 :(得分:2)

如果您安装了gcc,请尝试gcc -masm=intel -S source.c以与MASM非常相似的语法生成汇编文件。