본문 바로가기
Programming

Big-endian, Little-endian, and Byte Order Mark

by leanu 2010. 3. 18.

  • Big Endian : 자릿수가 큰쪽 바이트가 먼저 저장. (ex) 3E1F 23A1 => 3E1F 23A1
    • 장점 : 사람이 이해하는 방식으로 표기하므로, 수치를 읽는데 자연스럽다.

  • Little Endian : 자릿수가 작은 쪽 바이트가 먼저 저장 (ex) 3E1F 23A1 => 1F3E A123
    • 장점 : 자릿수가 변하는 연산시 Big Endian 보다 빠르다. 자릿수 올림이 발생했을 경우( 예를 들면 F + 1 = 10 ), Big Endian의 경우는 자릿수가 밀려서 저장이 되어야 한다. 이는  performance issue 가 발생할 수 있으며 little Endian 을 채택한 경우 기존 자리는 그대로 있고 맨 뒤에 추가만 하면 되기 때문이다.

Byte Order Mark (BOM) : 현재 입력된 문자의 byte의 순서에 대한 정보가 담긴 Unicode Character. 파일의 맨 앞에 등장하며, 생략 가능하다.
 Encoding  Hexadecimal
 UTF-8  EF BB BF 
 UTF-16 Big Endian  FE FF
 UTF-16 Little Endian  FF FE 
 UTF-32 Big Endian  00 00 FE FF 
 UTF-32 Little Endian  FF FE 00 00 
 GB-18030 84 31 95 33 


'Programming' 카테고리의 다른 글

exit and exit status in bash script  (0) 2010.06.03
Tip of Text Encoding in Java  (0) 2010.03.18
JSON - JavaScript Object Notation  (0) 2010.03.02
beanstalkd - fast workqueue service  (0) 2010.03.02
bash shell 인자 개수 처리  (0) 2010.02.01

댓글