Don't Look Back In Anger

공단기 컴퓨터일반 기출문제집 PART01. 200번 본문

IT/공단기 컴퓨터일반 기출

공단기 컴퓨터일반 기출문제집 PART01. 200번

버로나 2022. 2. 20. 01:31

2017년 지방직 9급 컴퓨터일반 7번

 

32비트 16진수 정수 302AF567(16)이 메모리 주소 200(16)부터 시작하는 4 바이트에 저장되어 있다. 리틀 엔디안(little  endian) 방식을 사용하는 시스템에서 메모리 주소와 그 주소에 저장된 8 비트 데이터가 옳게 짝지어진 것은? (단,  바이트  단위로  주소가  지정된다)

 

 

정답 : ①


메모리에 데이터를 저장하는 방식으로는 크게 리틀 엔디안(Little-endian)과 빅 엔디안(Big-endian)이 있다.

 

리틀 엔디안은 낮은 주소에 하위 바이트 값부터 저장하는 방식이다. 데이터 302AF567(16) 에서 하위 바이트란 뒷부분을 의미하며, 낮은 주소인 200번지에 '67'부분부터 저장한다.

 

바이트 단위로 주소가 지정된다고 하였으므로 16진수 한 자리는 4비트이므로, 16진수 두 자리씩 하나의 주소에 집어넣으면 된다. 200번지에 67, 201번지에 F5, 202번지에 2A, 203 번지에 30 빅  엔디안은 반대로 낮은 주소에 상위 바이트 값부터 저장하는 것으로, ③과 같이 저장된다. 빅 엔디안은 우리가 실제 숫자를 읽는 순서와 동일하기 때문에 디버깅에  유리하고, 리틀 엔디안은 작은 변수값을 간단히 처리할 수 있기 때문에 프로그래밍에 유리하다.