2019. 5. 8. 05:26ใPROGRAMMING/C & C++
์ปดํจํฐ๋ 2์ง์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ฐ์ดํฐ์ ํํ ๋ฐ ์ฐ์ฐ์ ์งํํฉ๋๋ค.
๊ทธ๋ฌ๋ฏ๋ก 2์ง์๋ฅผ ์ดํดํด์ผ C, C++, Java ๋ฑ์
ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ฅผ ์ ํํ๊ฒ ์ดํดํ ์ ์์ต๋๋ค.
1. 2์ง์๋ ๋ฌด์์ธ๊ฐ?
2์ง์๋ 0๊ณผ 1 ๋ ๊ฐ์ ์ซ์๋ฅผ ์ด์ฉํด์ ์๋ฅผ ํํํ๋ ๋ฐฉ๋ฒ์ ๋๋ค.
์์ ์คํํ์ผ ์์ฑ ๊ณผ์ ์์ ๋งํ ๊ธฐ๊ณ์ด์ ํํ๊ณผ ๋์ผํ ๊ฒ์ ์ ์ ์์ต๋๋ค.
์ฐ๋ฆฌ๊ฐ ์ผ์์ํ์์ ์ฐ๊ณ ์๋ ๊ฒ์ 10์ง๋ฒ์ ๋๋ค.
0 ~ 9๊น์ง ์ด 10๊ฐ์ ์๋ฅผ ์ด์ฉํด์ ์๋ฅผ ํํํ๊ณ ์์ฃ .
์๋ฅผ ๋ค์ด์ 10์ง์์ธ 23 2์ง์๋ก ํํํ๊ฒ ๋๋ฉด
1 0111(2)๋ก ํํํ ์ ์์ต๋๋ค.
1 + 2 + 4 + 8 + 16 = 23
2. ๊ทธ๋ฌ๋ฉด 16์ง์๋ ๋ฌด์์ธ๊ฐ?
์ฒ์ ๋ณด๋ ๋จ์ด์ฌ์ ๋ฏ์ค๊ฒ ๋๊ปด์ง์ค ์ ์๊ฒ ์ง๋ง
2์ง์์ ๋ค๋ฅผ ๋ฐ ์์ต๋๋ค.
2์ง์๋ 0๊ณผ 1 2๊ฐ ์ ์๋ก ์ซ์๋ฅผ ํํํ๋ ๋ฐฉ์์ด๊ณ
10์ง์๋ 0๋ถํฐ 9๊น์ง 10๊ฐ์ ์๋ก ์ซ์๋ฅผ ํํํ๋ ๋ฐฉ์์ด๋ผ๊ณ ํ์ต๋๋ค.
๊ทธ๋ฌ๋ฉด ๋ง์ฐฌ๊ฐ์ง๋ก 16์ง์๋ 0๋ถํฐ 15๊น์ง 16๊ฐ์ ์๋ก ์ซ์๋ฅผ ํํํ๋ ๋ฐฉ์์ ๋๋ค.
๊ทธ๋ฐ๋ฐ 16๊ฐ์ ์๋ก ์ซ์๋ฅผ ํํํด์ผ ๋๋๋ฐ,
0๋ถํฐ 9๊น์ง์ ์ซ์๋ฐ์ ์ฌ์ฉํ ์ ์์ผ๋ฏ๋ก ๋ฌธ์ ๊ธฐํธ๋ฅผ ๋์ํ์ฌ ์๋ฅผ ํํํฉ๋๋ค.
๋ฌธ์ A = 10
๋ฌธ์ B = 11
๋ฌธ์ C = 12
๋ฌธ์ D = 13
๋ฌธ์ E = 14
๋ฌธ์ F = 15
10์ง์ 23์ 16์ง์๋ก ํํํ๊ฒ ๋๋ฉด
F8(16)์ผ๋ก ํํํ ์ ์๊ฒ ์ต๋๋ค.
8 + 15 = 23
3. 16์ง์๋ ๋ฌด์ ๋๋ฌธ์ ์ฌ์ฉํ๋ ๊ฒ์ผ๊น?
์ปดํจํฐ๋ 0๊ณผ 1๋ก ๋ฐ์ดํฐ๋ฅผ ํํํ๊ธฐ ๋๋ฌธ์
2์ง์๋ง ์๋ฉด ๋๊ฒ ์ง ์๊ฐ ํ ์๋ ์๊ฒ ์ง๋ง,
์ซ์๊ฐ ์ปค์ง๊ฒ ๋๋ฉด 2์ง์๋ก ํํํ ๋, ๊ธธ์ด๊ฐ ๊ธธ์ด์ ธ์
๊ฐ๋ ์ฑ์ด ๋จ์ด์ง๊ฒ ๋์ด ํ ๋์ ํ์ ํ๊ธฐ ํ๋ค์ด์ง๋๋ค
16์ง์๋ฅผ ์ด์ฉํ๋ฉด 2์ง์๋ฅผ ๊ฐ๋จํ๊ฒ ํํ ๋ฐ ํ์ ํ ์ ์๊ฒ ๋ฉ๋๋ค.
์๋ํ๋ฉด 2์ง์ 4๊ฐ๋ 16์ง์ 1๊ฐ๋ก ํํ์ด ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ๋๋ค.
10์ง์ 15
2์ง์ 1111(2)
16์ง์ F
๋ฐ๋ผ์ 2์ง์์ 16์ง์ ๋ ๋ค ์ต์ํด์ง ํ์๊ฐ ์์ต๋๋ค.
3. ๋ฐ์ดํฐ์ ํํ ๋จ์์ธ ๋นํธ(Bit)์ ๋ฐ์ดํธ(Byte)
๋นํธ๋ ์ปดํจํฐ๊ฐ ํํํ๋ ๋ฐ์ดํฐ์ ์ต์ ๋จ์์ ๋๋ค.
2์ง์ ๊ฐ ํ๋๋ฅผ ์ ์ฅํ ์ ์๋ ๋ฉ๋ชจ๋ฆฌ์ ํฌ๊ธฐ๋ฅผ ๋ปํ๋ ๋จ์์ ๋๋ค.
์๋ฅผ ๋ค์ด 4๋นํธ์ ๊ฒฝ์ฐ 2์ง์ ๊ฐ 4๊ฐ๋ฅผ ์ ์ฅํ ์ ์์ต๋๋ค.
0000(2)
0001(2)
1111(2)
์ด ๋นํธ๋ค์ 8๊ฐ ๋ฌถ์ผ๋ฉด ๋ฐ์ดํธ๋ผ๋ ๋จ์๊ฐ ๊ตฌ์ฑ๋ฉ๋๋ค.
0000 0001(2) = 8 Bits = 1 Byte
๋นํธ์ ๋ฐ์ดํธ ์ธ์๋
KB (ํค๋ก๋ฐ์ดํธ)
MB (๋ฉ๊ฐ๋ฐ์ดํธ)
GB (๊ธฐ๊ฐ๋ฐ์ดํธ)
TB (ํ ๋ผ๋ฐ์ดํธ)
๋ฑ์ ๋จ์๊ฐ ์์ต๋๋ค.
4. 32๋นํธ ํ๊ฒฝ๊ณผ 64๋นํธ ํ๊ฒฝ
์๋์ฐ ์ด์์ฒด์ ์์ 32๋นํธ ํ๊ฒฝ๊ณผ 64๋นํธ ํ๊ฒฝ์ด ์๊ณ ,
๋น์ฃผ์ผ ์คํ๋์ค์์๋ 32๋นํธ, 64๋นํธ ๋ ๊ฐ์ง ํ๊ฒฝ์์ ์์ ์ ํ ์ ์์ต๋๋ค.
์ด ์ฐจ์ด๋ ๋ฌด์์ธ์ง ํ ๋ฒ ์์๋ณด๊ฒ ์ต๋๋ค.
๊ฐ์ฅ ํฐ ์ฐจ์ด์ ์ CPU์์ ์ฒ๋ฆฌํ ์ ์๋ ๋ฐ์ดํฐ์ ์์ ๋๋ค.
ํ ๋ฒ์ ์ฒ๋ฆฌํ ์ ์๋ ๋ฐ์ดํฐ : 32๋นํธ ํ๊ฒฝ์์๋ ํ ๋ฒ์ 2์ 32์น
ํ ๋ฒ์ ์ฒ๋ฆฌ ํ ์ ์๋ ๋ฐ์ดํฐ : 64๋นํธ ํ๊ฒฝ์์๋ ํ ๋ฒ์ 2์ 64์น
2์ 32์น์ ์ฝ 42์ต 9์ฒ๋ง ์ ๋๋ก,
4GB ์ ๋ ๋๊ธฐ ๋๋ฌธ์ 32๋นํธ ํ๊ฒฝ์์๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ 4GB๊น์ง๋ง ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ด ์ด์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋๊ฒ ์ฅ์ฐฉํ๊ฒ ๋๋ฉด 32๋นํธ ์์คํ ์์๋ ์ธ์์ด ๋์ง ์์ต๋๋ค.
0111 1111 | 1111 1111 | 1111 1111 | 1111 1111 (2)
2์ 64์น์ (2์ 32์น) X (2์ 32์น)
ํํํ๊ธฐ์๋ ์์ฒญ๋๊ฒ ํฐ ์ซ์๊ฐ ๋์ต๋๋ค.
16EB (์์ฌ๋ฐ์ดํธ)๋ผ๋ ๋จ์๊ฐ ๋์ค๋๋ฐ,
1TB -> 1PB -> 1EB
์ฆ,
1PB = 1000 TB
1EB = 1000 PB
์์๋ณด๋ค ์์ฒญ๋๊ฒ ํฐ ์ซ์๋ฅผ ์ธ์ํ ์ ์์ต๋๋ค.
0111 1111 | 1111 1111 | 1111 1111 | 1111 1111 | 1111 1111 | 1111 1111 | 1111 1111 | 1111 1111 (2)
(๊ณ์ฐ์ ๋ฐ๋ก ํ์ง ์๊ฒ ์ต๋๋ค)
64๋นํธ ํ๊ฒฝ์์๋ ์ฌ๋งํ ์ปดํจํฐ์ ์ฅ์ฐฉ๋ ๋ชจ๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ์ฉํ ์ ์๋ค๊ณ ํด๋ ๋ฌด๋ฐฉํฉ๋๋ค.
์ด๋ฌํ ์ฐจ์ด์ ๋ ์ฐ๋ฆฌ๊ฐ ๊ฒ์์ ๋ง๋ค ๋ ์ค์ํ๊ฒ ์์ฉํฉ๋๋ค.
๊ณ ํ์ง์ 2D ํ ์ค์ณ, 3D ๋ฉ์ฌ ๋ฑ ๋ฆฌ์์ค๋ฅผ ๋ก๋ ํ ๋ ๋ง์ ์์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ์๋ก ํ๋ฏ๋ก,
๋ฉ๋ชจ๋ฆฌ๋ฅผ 4GB๋ฐ์ ์ฌ์ฉ ๋ชปํ๋ 32๋นํธ ํ๊ฒฝ์์ ๊ฐ๋ฐ ๋ฐ ์คํํ๊ธฐ์๋ ๋ฌด๋ฆฌ๊ฐ ์์ต๋๋ค.
๋น์ฃผ์ผ ์คํ๋์ค ๋ํ 4GB๊ฐ ๋์ด๊ฐ๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋์ด๊ฐ๊ฒ ๋๋ฉด ํ๋ก์ ํธ๊ฐ ํฐ์ง๊ฒ ๋๋ฏ๋ก,
์์ ์ด ์ฌ์ฉํ๋ ๋ฆฌ์์ค์ ์์ ๊ณ ๋ คํด์ ๊ฐ๋ฐ ํ๊ฒฝ์ ์ ํํ๋ฉด ๋๊ฒ ์ต๋๋ค.
'PROGRAMMING > C & C++' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
6. [C์ธ์ด] ํฌ์ธํฐ ์ดํดํ๊ธฐ (0) | 2019.05.15 |
---|---|
5. [C์ธ์ด] ํจ์ ์ดํดํ๊ธฐ (0) | 2019.05.14 |
4. [C์ธ์ด] ๋นํธ ์ฐ์ฐ์ (0) | 2019.05.10 |
3. [C์ธ์ด] ์์ ์ ์ ํํ. (2์ ๋ณด์) (3) | 2019.05.09 |
1. [C์ธ์ด] ํ๋ก๊ทธ๋จ ๋น๋ ๊ณผ์ ( ์คํํ์ผ(. exe) ์์ฑ ๊ณผ์ ) (1) | 2019.05.07 |