MIPS32 에서 명령어의 길이는 보통 4바이트인데.. 간혹 IDA에서 단일 명령어인데 명령어 길이가 8로 나오는 명령어


들(lw, la, .. 등등)이 있다. 이러한 명령어들은 pseudo instruction일 가능성이 크다.


https://en.wikibooks.org/wiki/MIPS_Assembly/Pseudoinstructions


(혹은 구글에 MIPS pseudo instruction 으로 검색하면 자료 많이 나온다.)



요약하면.. pseudo instruction을 쓰면 어셈블러에서 기계어로 번역할 때 pseudo instruction 하나를 두 개의


instruction으로 바꿔 번역하는 것 같다. 그래서 IDA에서 분석 시 lw라던지 la.. 등등의 명령어의 길이가 8바이트 길


이를 가진 것으로 분석되어 보이는 것. 


그렇긴 해도 모든 lw, la,.. 등의 명령어들이 꼭 pseudo instruction이라 8바이트를 차지하는 것은 아닌 것 같다.





Posted by huammmm1
,