2012-10-14 3 views
0

MIPS의 컴파일 시간에 데이터를 제공 한 배열을 만들려고합니다. 하지만 오류가 발생하여 코드가 컴파일되지 않습니다. 다음은 오류의 원인이되는 코드입니다.컴파일 시간에 초기화 된 배열 오류

.data 

array: .space 'A','B','C','D','E','F','G','H','I' 

오류의 원인은 무엇입니까? .space, .byte.word의 배열을 설명하는 자습서를 알고 있다면 대답에서 언급하십시오.

감사

답변

1

당신은 초기화 된 배열 .space 지시어를 사용할 수 없습니다. .space은 N 개의 초기화되지 않은 바이트를 예약하기위한 것입니다. 데이터의 크기에 따라 .byte 또는 .word을 이러한 용도로 사용할 수 있습니다. 귀하의 예에서 ASCII 문자를 사용하고 있으므로 .byte을 확인해야합니다.

.data 

array: 
.byte 'A','B','C','D','E','F','G','H','I' 

모든 MIPS 어셈블리 참조는 정상이어야합니다. 여기에 one이 있습니다.

+0

.byte를 사용하면 "메모리 주소 초과 오류"가 발생합니까? 내가 – Naruto

+0

은 $ S4, $의 T1, $ t0의 파운드 $의 a0,0 ($의 S4) 시뮬레이터이 문을 실행 리 $의 v0,4 콜을 어떻게 추가합니까해야 오류가 내가 사용하고 – Naruto

+0

를 생성 QTspim .. – Naruto