3장 리틀 엔디안(Little Endian) 표기법
바이트 오더링 : 데이터를 저장하는 방식. 애플리케이션의 디버깅을 할 때 알아두어야 하는 기본 개념중 하나. 빅 엔디언과 리틀 엔디언 방식 크게 두 가지가 있다.
빅 엔디안 방식 : 데이터를 저장할 때 사람이 보는 방식과 동일하게 앞에서부터 순차적으로 저장.
리틀 엔디안 방식 : 데이터를 저장할 때 역순으로 저장. 하지만 바이트 자체는 정상적으로 저장되고 str 문자열은 정상적으로 저장. 그 이유는 문자열은 결국 char 배열이기 때문에 각 바이트를 하나씩 연속해서 저장한다고 생각하면 문자열 자체는 빅 엔디언과 동일한 순서로 저장.
ex) [78] [56] [34] [12]
* 빅 엔디안은 대형 UNIX 서버에 사용되는 RISC 계열의 CPU에서 많이 사용되고 네트워크 프로토콜에 사용됨. 따라서 애플리케이션 개발에 사용된 데이터를 네트워크로 송수신할 때 엔디언 타입을 변경해야함
* 리틀 엔디안은 Intel x86 CPU에서 사용. 데이터를 역순으로 저장시키는 리틀 엔디언 방식도 산술 연산과 데이터의 타입이 확장/축소될 때 더 효율적.
'Security > Reversing' 카테고리의 다른 글
리버싱 핵심원리 7장 (0) | 2023.03.27 |
---|---|
리버싱 핵심원리 6장 (0) | 2023.03.27 |
리버싱 핵심원리 5장 (0) | 2023.03.27 |
리버싱 핵심원리 4장 (0) | 2023.03.27 |
리버싱 핵심원리 2장 (0) | 2023.03.27 |