我目前在一个名为“计算机架构和组织”的课程中。我的教授用Sparc汇编语言编写了一个微型操作系统。我的教授现在希望我们编写一个递归函数,并将结果打印到控制台。
我的问题是,我如何编译和测试我的程序?我真的不明白。上学期我上了一门叫“汇编语言”的课。在那堂课上,我从未学过"Sparc“架构。我总是使用汇编语言和内联C,并使用Visual来编译程序。现在我只是迷路了。
发布于 2014-04-16 05:28:56
这里是SPARC汇编语言的一个很好的教程,包括与gcc一起编译和运行代码。另见SPARC汇编语言。
发布于 2016-10-22 11:51:27
您可以在vi(1)中编写汇编程序代码,然后使用汇编程序as(1)将其组装到机器代码对象文件.o中。然后使用链接编辑器ld(1)将相关的可执行文件和链接格式(ELF)信息添加到.o文件中,解析任何外部符号(函数调用为共享对象库),从而将其转换为运行时链接器ld.so.1可以执行的可执行文件。
as hello.s -o hello.o && ld hello.o -o hello && ./hello你好,世界!
您还可以使用C或C++编译器的前端将您编写的汇编程序代码链接到可执行文件中:
cc hello.o -o hello && ./hello
gcc hello.o -o hello && ./hello上面的调用将在幕后为您调用具有正确选项的链接编辑器ld(1)。
让我们假设您的汇编程序代码将函数调用到libc中。那么你还有一个额外的步骤:
; generates hello.o
as hello.s && ld hello.o -lc -o hello && ./hello-lc选项告诉链接器您想要链接到libc。"lib“由链接器自动加上。
https://stackoverflow.com/questions/23100625
复制相似问题