본문 바로가기
프로그래밍/임베디드

.bin 파일과 .hex 파일의 이해

by choies1 2013. 2. 3.

임베디드 시스템의 경우 빌드된 바이너리 파일을 MCU에 다운로드 하게 되는데, 이때 .bin과 .hex 파일을 주로 이용하게 된다.


본 포스트에서는 이 둘이 어떠한 의미이면 어떤 특징들이 있는지를 살펴보도록 하겠다.


간단히 말하면 .bin 파일은 말 그대로 0과 1로 이루어진 파일이고, hex 파일은 이것을 hex로 바꾼 후에 이것을  ASCII 코드로 변환한 파일이다. 이렇게 ASCII 코드로 변환해야 사람이 볼 수 있고, 추가적은 정보도 보낼 수 있기 때문이다.

또한 hex 파일에는 프로그램 시작 주소등의 정보등이 담겨 있다. bin 파일은 00번지 부터 시작하는 것으로 가정해서 만들어서, 만약 00번지에서 시작하지 않는다면, 00부터 시작 주소 까지는 0x00이나 0xff 등으로 채워지게 된다. 따라서 .hex 파일과 .bin 파일의 크기를 따지는 것은 무의미 하다. 또한 이 둘은 쉽게 변환이 된다. 변환을 위한 툴도 다양하게 있다.


참고: http://cpu.kongju.ac.kr/downfile/column/Tnote12.pdf