유니코드 평면에 대한 설명

유니코드는 ‘평면'(Plane)이라는 개념이 존재합니다. 평면은 유니코드 전체를 논리적으로 나눈 구획이며, 유니코드의 구획 단위 중 가장 큰 단위입니다. 유니코드 포인트에서 하위 2바이트가 하나의 평면을 이루는 단위입니다. 즉 U+0000부터 U+FFFD까지는 0번 평면, U+10000부터 U+1FFFD까지는 1번 평면, U+20000부터 U+2FFFD까지는 2번 평면 식으로 가며, 16번 평면(U+100000 – U+10FFFD)까지 존재합니다. [주: 각 평면이 FFFF가 아닌 FFFD에서 끝나는 이유는, 하위 2바이트 … “유니코드 평면에 대한 설명” 더 읽기

UTF-8 인코딩, 무엇인가?

UTF-8(Unicode Transformation Format – 8bit) 인코딩은 유니코드 문자를 표현하기 위한 인코딩 방식입니다. 현재 가장 널리 쓰이는 방식입니다. UTF-8 인코딩은 가변 길이 인코딩으로, 1개 문자당 최소 1바이트에서 최대 4바이트(이론상 6바이트)까지의 길이를 갖습니다. 또한, UTF-16과는 달리 바이트 순서의 차이(Big Endian vs Little Endian)로 인한 혼란이 없다는 장점이 있고, 아스키(ASCII) 코드와의 호환성을 갖추고 있습니다. UTF-8에서 1바이트로 표현될 수 … “UTF-8 인코딩, 무엇인가?” 더 읽기

한글 완성자 분석하는 파이썬 코드

한글날에 한 포스트 작성합니다. 이 포스트는 파이썬에서 한글 완성자를 분석하는 포스트입니다. 유니코드에서 한글 완성자는 ‘가’부터 ‘힣’까지 모두 11172자가 있으며 ‘가’는 0xAC00(Dec 44032)에, ‘힣’은 0xD7A3(Dec 55203)에 배당되어 있습니다. 그리고 이는 과거에 널리 사용되었던 완성형(KS X 1001)과는 달리 DOS 시절 많이 쓰였던 조합형 코드처럼 오늘날의 한글 맞춤법 체계에서 조합 가능한 모든 글자들이 규칙적으로 배열되어 있다는 특징이 있습니다. … “한글 완성자 분석하는 파이썬 코드” 더 읽기

자바 코드 UTF-8로 컴파일하기

다음과 같은 자바 코드가 있다고 가정을 해 봅시다. public class LuvStar { public static void main(String[] args) { System.out.println(“사랑별 (Luv Star):”); System.out.println(” 하나, 둘, 셋 다시 세어봐도 널 찾을 수 없어”); System.out.println(” 내 맘 속에 잠 들어 있는 너를 꺼내”); System.out.println(” 못다한 내 얘기들 모두 말 할거야 천천히 언제나 이대로”); System.out.println(” 나의 사랑 별 그리고 … “자바 코드 UTF-8로 컴파일하기” 더 읽기