BOM

읽기 : 봄

스펠 : Byte Order Mark

UnicodeUTF-16 등 16비트 폭의 인코딩 방식에 있어서, 인코딩을 지정하기 위해 파일의 머리에 기입하는 16비트의 값.

UTF-16 등에서는 비트열의 배열로서 빅엔디언과 리틀엔디언 둘다 모두 허용하기 때문에, 잘못된 엔디언으로 문서를 쓰면 판독할 수 없게 된다. 이 때문에 파일 머리의 BOM을 읽어서 문서가 어느 엔디언으로 작성 되었는지를 판별하고 난 후에 문서를 읽어 들이게 된다.

BOM은 16진수로 [FEFF]라는 16비트의 값이며, 잘못된 엔디언으로 읽어 들였을 경우에는 이것이 [FFFE]가 된다. BOM이 [FFFE]가 되었을 경우에는 반대 엔디언을 이용하면 올바른 문서를 읽어 들일 수 있다.

BOM은 엔디언의 판별 뿐만 아니라, 문서가 Unicode로 기술되어 있는지를 판별 하는데 이용되기도 한다. 이때문에 엔디언과는 관계가 없는 UTF-8과 같은 문서에도 머리에 BOM이 붙어있는 경우가 있다.

Unicode와 거의 등가인 ISO 10646에서는 BOM에 해당되는 코드는 [ZERO WIDTH NON-BREAKING SPACE]라 불리며, 비트열은 BOM과 같은 16진수의 [FEFF]이지만, 문서의 도중에 등장하기도 한다.

의견 또는 추가를 원하는 용어: