编译Sparc汇编语言

时间:2014-04-16 05:22:15

标签: assembly sparc

我目前正在一个名为“#34;计算机架构和组织”的课程中。"我的教授在Sparc Assembler Language中编写了一个迷你操作系统。我的教授现在希望我们编写一个递归函数并将结果打印到控制台。

我的问题是,如何编译和测试我的程序?我真的不明白。上学期我参加了一个名为“汇编语言”的课程。"在那堂课上,我从未了解过#Sparc"建筑。我总是使用汇编语言与内联C,并使用Visual Basic编译程序。现在我迷失了。

2 个答案:

答案 0 :(得分:1)

Here是SPARC汇编语言的一个很好的教程,包括使用gcc编译和运行代码。另请参阅SPARC Assembly Language

答案 1 :(得分:1)

您在vi(1)中编写汇编代码,然后使用汇编程序(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"由链接器自动添加。