공부하는 남자   



  • Key log

  • 공부 하는 남자
    검색 하는 남자

  • Log in out

  • 관리자

  • 편집

  • 글 쓰기

  • Link
  • Home
  • 유니코드 십육진수를 유니코드 이진수로 변환 하기

    2014. 7. 31. 10:18   코딩문자 배우기

    이번 시간 에도 지난 시간에 이어 요즘 인터넷상 에서 많이 사용하는 은어인 솔까말 득템 이란 글자로 도출 해낸 유니코드 십육진수를 가지고 먼저 이진수로 변환 한후 디지털 언어인 유니코드 <binary byter code>를 만들어 온전한 코드를 완성 하도록 합니다. 

    지난글 솔까말과 득템의 의미와 유니코드 읽는법에 대해 안 봤다면

    https://eproo.tistory.com/73 페이지를 먼저 읽으신 후에 보시길 바랄께요


    앞서 배운 바 대로 디지털 언어는 이진수만 받아들일수 밖에 없기 때문 이죠

    지난 시간에 솔까말 득템 의 뜻과 이 글자들에 지정된 유니코드가 무엇인지를 알았 으니 이젠 글자 들이 가진 십육진 코드를 가지고 이진수로 변환해 보도록 합니다.


    솔까말 의 유니코드는 → [U+C194]+[U+AE4C]+[U+B9D0] 이 세개 코드의 조합 이고 득템 [U+B4D0]+[U+D15C] 이렇게 2개의 유니코드를 가지고 있죠


    자 그럼 십육진수는 알파벳이 조합되어 있어 그대로 계산 하기가 어려우니 십육진수를 십진수로 먼저 고쳐야 겠지요

    솔까말 의 코드 부터 고쳐 봅니다.  
    [U+C194] 12×163+1×162+9×16+4=49556 → [U+49556]
    [U+AE4C] 10×163+14×162+4×16+12=40960+3584+64+12=44620→ [U+44620]
    [U+B9D0] 11×163+9×162+13×16+0×1=45056+2304+208=47568→ [U+47568] 이렇게 솔까말에 부여된 십육진수를 십진수로 변환 했네요

    다음은 득템 의 코드를 십진수로 만들어 봅니다.

    득템 [U+B4D0]+[U+D15C]
    [U+B4D0] → 11×163+4×162+13×16+1×0=45056+1024+208=46288→  [U+46288]
    [U+D15C] → 13×163+1×!162+5×16+12×1=53248+256+80+12=53584→ [U+53584]

    일단 유니코드에 배정된 솔까말 과 득템 이라는 단어에 부여된 십육진수코드를 십진수로 고치는데 성공 했습니다.




    다음 순서는 십진수를 이진수로 고쳐 보도록 합니다.


    십진수를 이진수로 쉽게 계산 하는 방법


    솔까말 십진수 [U+49556][U+44620] [U+47568]
    득템 십진수[U+46288] [U+53584] 


    유니코드 표시 기호인 U와 계산식 나열은 생략 합니다.

     

    ■아래 괄호속 숫자는 이진수의 자리에 대응 하는 십진수 입니다.

                                    ↓

    [32768][16384][8192][4096][2048][1024][512][256][128][64][32][16][8][4][2][1]


    [49556] [1100][0001][1001][0100]  

    [44620] [1010][1110][0100][1100]

    [47568] [1001][0001][1000][0000]


    [46288] [1011][0100][1101][0000]

    [53584] [1101][0001][0101][0000]  


    위의 계산을 정리 해보면 아래 와 같이 되겠죠

    솔까말 십진수 [U+49556][U+44620] [U+47568] 

    솔까말 이진수
    [1100][0001] [1001][0100] [1010][1110] [0100][1100] [1001][0001][1000][0000]

    득템 십진수 [U+46288] [U+53584]

    득템 이진수
    [1001][0001][1000][0000] [1101][0001][0101][0000]

    다음은 유니코드의 바이트 도표를 보고 한글 판의 구간을 알아야 합니다.

    유니코드 도표



    의 십육진수코드는[U+C194] 이니까 코드 범위는 000800~00FFFF 안에 속한 다는걸 알수 있겠네요

    자 그럼 유니코드 이진법 구간의 바이트 형으로 표시를 해야 겠죠 

    위에서 계산 할때 4비트씩 4개 바이트로 쪼개 놨 었든 이진수를 8비트 3 바이트코드로 만들어야 되겠네요

    [1110××××][10××××××][10××××××]이것은 유니코드에서 한글과 같이 3바이트 코드로 인코딩 하는 문자들에게 기본적으로 할당 된 숫자 들입니다.

    여기서 첫 바이트가111로 시작 한다는 건 3바이트 구간의 문자를 의미 하는 것이죠 

    예를 들어 첫바이트가 [110×××××] 이렇게 시작 하면 2바이트 문자를 의미 하는 것입니다.

    자 그럼 위에서 계산 해둔 이진수를 ××표시를 한 곳에다 쪼개어 배열 하면 되겠지요

    →[11101100][10000110][10010100]
    →[11101010][10111001][10001100]  
    →[11101001][10000110][10000000]  

    →[11101011][10010011][10010000]  
    →[11101101][10000101][10010000]

    자 이렇게 해서 우리말 솔까말과 득템의 뜻과 유니코드 십육진수로 바이트 이진코드를 모두 완성 해 봤습니다.

     

    진수 자동 계산기


    10진수: Dec
    16진수: Hex
     2진수: Bin
     8진수: Oct

      문자: ASCII / Unicode Char


    메시지:





    T,back:     Comment: