2015-02-02 6 views
0

MIPS 지침은 나에게 8c000000Mips에서 lw, sw 명령어를 어떻게 인코딩합니까? 내가 변환 실행을 통해이 파일을 실행하면

을 제공하지만

.text 
    lw $zero,0($zero) 
.data 
n: .word 0 

16 진수하기 위해 나는이
LW에서 $ 제로, 0 ($ 영) LW 변경하는 경우 $ 0, n ($ zero) then me it 8f800000

어떻게 즉시 출력을 변경하면 출력의 첫 번째 부분이 변경됩니까?

도움을 주시면 대단히 감사하겠습니다.

답변

1

8f800000lw $0,($28), 즉 lw $zero,($gp)에 해당합니다. 따라서 어셈블러는 n이 전역 영역의 오프셋 0에 위치하므로 n($zero)($gp)으로 바꿉니다.

+0

실제로 나는 [온라인 디스어셈블러] (http://www2.onlinedisassembler.com/odaweb/)를 사용했으며'.data : 0x00000000 \t 8f800000 \t lw $ 0,0 ($ 28)'및'.data : 0x00000004 \t 8c000000 \t lw $ 0,0 ($ 0)' –