πŸ”’μ§„λ²• λ³€ν™˜κΈ°

숫자λ₯Ό μž…λ ₯ν•˜λ©΄ 2μ§„μˆ˜Β·8μ§„μˆ˜Β·10μ§„μˆ˜Β·16μ§„μˆ˜λ‘œ μ¦‰μ‹œ λ³€ν™˜λ©λ‹ˆλ‹€.

진법 λ³€ν™˜κΈ° μ‚¬μš©λ²•κ³Ό 진법 기초 지식

진법(κΈ°μˆ˜λ²•)μ΄λž€ λͺ‡ 개의 숫자λ₯Ό μ΄μš©ν•΄ 수λ₯Ό ν‘œν˜„ν•˜λŠ” λ°©μ‹μž…λ‹ˆλ‹€. μš°λ¦¬κ°€ μΌμƒμ—μ„œ μ‚¬μš©ν•˜λŠ” 10진법 외에 컴퓨터 κ³Όν•™μ—μ„œλŠ” 2진법, 8진법, 16진법이 자주 μ“°μž…λ‹ˆλ‹€. 이 λ„κ΅¬λŠ” μ–΄λŠ μ§„λ²•μœΌλ‘œ μž…λ ₯해도 λ‚˜λ¨Έμ§€ μ„Έ μ§„λ²•μœΌλ‘œ μ¦‰μ‹œ λ³€ν™˜ν•΄ μ€λ‹ˆλ‹€.

각 μ§„λ²•μ˜ νŠΉμ§•

2진법(Binary)은 0κ³Ό 1만으둜 수λ₯Ό ν‘œν˜„ν•©λ‹ˆλ‹€. CPU와 λ©”λͺ¨λ¦¬λŠ” λͺ¨λ‘ 2μ§„μˆ˜λ‘œ λ™μž‘ν•˜κΈ° λ•Œλ¬Έμ— 컴퓨터 ν•˜λ“œμ›¨μ–΄μ™€ μ €μˆ˜μ€€ ν”„λ‘œκ·Έλž˜λ°μ—μ„œ ν•„μˆ˜μ μœΌλ‘œ λ“±μž₯ν•©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ 10μ§„μˆ˜ 10은 2μ§„μˆ˜λ‘œ 1010μž…λ‹ˆλ‹€.

8진법(Octal)은 0~7의 숫자λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€. 주둜 μœ λ‹‰μŠ€/λ¦¬λˆ…μŠ€ 파일 κΆŒν•œ(chmod 755 λ“±)을 ν‘œν˜„ν•  λ•Œ μ”λ‹ˆλ‹€. 3λΉ„νŠΈκ°€ ν•˜λ‚˜μ˜ 8μ§„μˆ˜ μžλ¦¬μ— λŒ€μ‘λ˜μ–΄ 2μ§„μˆ˜λ₯Ό μ••μΆ• ν‘œν˜„ν•˜λŠ” 데 μœ λ¦¬ν•©λ‹ˆλ‹€.

16진법(Hexadecimal)은 0~9와 A~Fλ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€. 색상 μ½”λ“œ(#FF6600), λ©”λͺ¨λ¦¬ μ£Όμ†Œ, λ°”μ΄νŠΈ 데이터 ν‘œν˜„μ— 널리 μ“°μž…λ‹ˆλ‹€. 4λΉ„νŠΈκ°€ ν•˜λ‚˜μ˜ 16μ§„μˆ˜ μžλ¦¬μ— λŒ€μ‘λ˜μ–΄ λ°”μ΄νŠΈ λ‹¨μœ„ 데이터λ₯Ό κ°„κ²°ν•˜κ²Œ λ‚˜νƒ€λƒ…λ‹ˆλ‹€.

λ³€ν™˜ 원리

μ–΄λŠ 진법이든 λ¨Όμ € 10μ§„μˆ˜λ‘œ λ³€ν™˜ν•œ λ’€ λͺ©ν‘œ μ§„λ²•μœΌλ‘œ λ³€ν™˜ν•˜λŠ” 것이 κΈ°λ³Έ μ›λ¦¬μž…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ 16μ§„μˆ˜ FFλ₯Ό 2μ§„μˆ˜λ‘œ λ°”κΎΈλ €λ©΄ FF β†’ 255(10μ§„μˆ˜) β†’ 11111111(2μ§„μˆ˜) μˆœμ„œλ‘œ λ³€ν™˜ν•©λ‹ˆλ‹€. 16μ§„μˆ˜ ν•œ μžλ¦¬λŠ” μ •ν™•νžˆ 4λΉ„νŠΈμ— ν•΄λ‹Ήν•˜λ―€λ‘œ, 각 자리λ₯Ό 4λΉ„νŠΈ 2μ§„μˆ˜λ‘œ μΉ˜ν™˜ν•˜λŠ” 방식도 많이 μ”λ‹ˆλ‹€.

μ£Όμ˜μ‚¬ν•­

이 λ„κ΅¬λŠ” 음이 μ•„λ‹Œ μ •μˆ˜λ§Œ μ§€μ›ν•©λ‹ˆλ‹€. μ†Œμˆ˜μ μ΄ ν¬ν•¨λœ μˆ˜λ‚˜ μŒμˆ˜λŠ” 진법 λ³€ν™˜ 방식이 λ‹¬λΌμ§€λ―€λ‘œ 별도 μ²˜λ¦¬κ°€ ν•„μš”ν•©λ‹ˆλ‹€. 16μ§„μˆ˜ μž…λ ₯ μ‹œ A~FλŠ” λŒ€μ†Œλ¬Έμž λͺ¨λ‘ ν—ˆμš©λ©λ‹ˆλ‹€.

자주 λ¬»λŠ” 질문

2μ§„μˆ˜ 1111 1111은 10μ§„μˆ˜λ‘œ μ–Όλ§ˆμΈκ°€μš”?
255μž…λ‹ˆλ‹€. 각 자리의 값을 λͺ¨λ‘ λ”ν•˜λ©΄ 128+64+32+16+8+4+2+1 = 255κ°€ λ©λ‹ˆλ‹€.
ν”„λ‘œκ·Έλž˜λ°μ—μ„œ 0x μ ‘λ‘μ‚¬λŠ” λ¬΄μ—‡μΈκ°€μš”?
0xλŠ” λ’€λ”°λ₯΄λŠ” μˆ˜κ°€ 16μ§„μˆ˜μž„μ„ λ‚˜νƒ€λ‚΄λŠ” ν‘œκΈ° κ΄€λ‘€μž…λ‹ˆλ‹€. 이 도ꡬ μž…λ ₯μ°½μ—μ„œλŠ” 0x 없이 숫자만 μž…λ ₯ν•˜λ©΄ λ©λ‹ˆλ‹€.