问题
I am trying to make an array to which I have provided the data at compile time in MIPS. but I am getting error and thus the code is not getting compiled. Here is the chunk of code which is causing error.
.data
array: .space 'A','B','C','D','E','F','G','H','I'
What is the reason for error? If you know any tutorials which explain arrays of .space
, .byte
and .word
, please mention them in answer.
Regards
回答1:
You can't use .space
directive for initialized arrays. .space
is for reserving N uninitialized bytes. You can use .byte
or .word
for such purpose, depending on the size of your data. In your example, you're using ASCII characters, so .byte
should be OK.
.data
array:
.byte 'A','B','C','D','E','F','G','H','I'
Any MIPS assembly reference should be OK. Here's one.
来源:https://stackoverflow.com/questions/12881850/compile-time-initialized-array-error