무엇을 0x
숫자 접두사 의미합니까?
const int shared_segment_size = 0x6400;
C 프로그램에서 나왔습니다. 나는 그것이 무엇인지, 특히 그 편지가 무엇을 x
의미 하는지 기억할 수 없습니다 .
0x prefix C++
하면 여기 로 오게됩니다. :)
무엇을 0x
숫자 접두사 의미합니까?
const int shared_segment_size = 0x6400;
C 프로그램에서 나왔습니다. 나는 그것이 무엇인지, 특히 그 편지가 무엇을 x
의미 하는지 기억할 수 없습니다 .
0x prefix C++
하면 여기 로 오게됩니다. :)
답변:
로 시작하는 리터럴 0x
은 16 진 정수입니다. (베이스 16)
번호 0x6400
는 25600
입니다.
6 * 16^3 + 4 * 16^2 = 25600
문자를 포함하는 예 (A = 10, B = 11 ... F = 15 인 16 진수 표기법에도 사용됨)
번호 0x6BF0
는 27632
입니다.
6 * 16^3 + 11 * 16^2 + 15 * 16^1 = 27632
24576 + 2816 + 240 = 27632
0xffffffff
그런 것을 본다 . ( 0xffffffff = -1
2의 보수를 가정하는 32 비트
C 및 C 구문 기반 언어에서 접두사 0x
는 16 진수 (기본 16)를 의미합니다.
따라서 0x400 = 4 × (16 2 ) + 0 × (16 1 ) + 0 × (16 0 ) = 4 × ((2 4 ) 2 ) = 2 2 × 2 8 = 2 10 = 1024 또는 하나의 이진수 K .
따라서 0x6400 = 0x4000 + 0x2400 = 0x19 × 0x400 = 25K
로 시작하는 숫자 0x
는 16 진수 (기본 16)입니다.0x6400
을 나타냅니다 25600
.
변환하다,
인자 1, 16, 256 등은 16의 거듭 제곱입니다.
0x6400 = (0*1) + (0*16^1) + (4*16^2) + (6*16^3) = 25600
또는
0x6400 = (0*1) + (0*16) + (4*256) + (6*4096) = 25600