我想在Mips中显示“Hello World”(来自互联网上的一个例子),看看它是如何工作的,但是我最终出现了错误。我首先出现以下错误: “spim:(parser)标签在文件C的第6行第二次定义:程序文件(x86) main:#执行从标签”main“开始” ^ 要修复它,我重新初始化并重新加载。然后我运行Qtspim,结果出现以下错误:“0x00400028/Notepad ++/test.asm [0x00400028] 0x3c010000 lui $ 1,0 [Greetings]; 8:la $ a0,Greetings#指令引用未定义符号字符串被打印成$ a0Mips:“Hello World”遇到错误
有人可以请解释是什么导致第一个和第二个错误?我只是想测试我在网上找到的代码,并理解Qtspim如何工作,然后再尝试我的任务。在Windows 08.您的帮助将非常感激。贝娄是代码。
# Program: Hello, World!
.data # data declaration section; specifies values to be stored
# in memory and labels whereby the values are accessed
Greeting: .asciiz "\nHello, World!\n"
.text # Start of code section
main: # Execution begins at label "main"
li $v0, 4 # system call code for printing string = 4
la $a0, Greetings # load address of string to be printed into $a0
syscall # call operating system to perform operation;
# $v0 specifies the system function called;
# syscall takes $v0 (and opt arguments)
#This illustrates the basic structure of an assembly language program.
我不知道第一个错误是什么,但第二个意思是没有叫* Greetings *的标签。我明白你的意思是*问候*。 – m0skit0 2013-02-25 09:18:12
Oups !!!!我没有看到那个!我修复了它,但现在,我有另一个错误:“尝试在0x00400030处执行非指令”。我知道它与内存位置有关。但我无法弄清为什么我有这个新错误。 – T4000 2013-02-25 09:22:25
如果你不断改变问题,我们永远不会结束。 – m0skit0 2013-02-25 16:37:29