2011-02-08 2 views

답변

3

해당 입니다. 해당 문자의 UTF8 코드입니다. inverted question mark은 UTF8의 0xc2:0xbf 인 유니 코드 코드 포인트 191입니다.

부호있는 바이트로 표시됩니다. 예를 들어 -62256-62 또는 194 인 경우 부호가 없습니다 - 즉 16 진수 0xc2입니다.

마찬가지로 -65256-65 또는 191 부호가 없습니다. 즉, 16 진수 0xbf입니다.

UTF8 시퀀스를 코드 포인트로 변환하려면 아래 표를 사용하십시오. 예를 들어

 
    Range    Encoding Binary value 
    ----------------- -------- -------------------------- 
    U+000000-U+00007f 0xxxxxxx 0xxxxxxx 

    U+000080-U+0007ff 110yyyxx 00000yyy xxxxxxxx 
         10xxxxxx 

    U+000800-U+00ffff 1110yyyy yyyyyyyy xxxxxxxx 
         10yyyyxx 
         10xxxxxx 

    U+010000-U+10ffff 11110zzz 000zzzzz yyyyyyyy xxxxxxxx 
         10zzyyyy 
         10yyyyxx 
         10xxxxxx 

, 당신의 0xc2:0xbf는 두 번째 경우와 일치 바이너리 11000010 10111111입니다 :

 
     11000010 10111111 
     ||||| |||||| 
     |||\\ ////// 
     ||| |||||||| 
    00000000 10111111 -> 0x00bf -> 191 
1

그 2 바이트 아마 UTF-8 ASCII를 들어

는 특정 코드 페이지를 필요가 있습니다.

정확히 '읽을 수있는'문자 인코딩은 무엇입니까? 16 진수 바이트 값에서

+0

ASCII에 코드 페이지가 없습니다. 7 비트입니다. –

+0

알아. 그러나 모두가 8을 사용하고 있습니다. –

+0

7 비트 ASCII를 8 비트 ANSI 코드 페이지와 혼동하고 있습니다. –

1

봐 : 문제의 그래프에 대한 Unicode information을 보면

  • -62는
  • -65는

에서 0xBF입니다 0xc2, 당신은 볼 수 있습니다 이것은 상정 된 물음표 모양의 UTF-8 인코딩을 구성하는 두 개의 바이트 인 inded입니다.

관련 문제