๐ฅ ํ๊ธฐ 4๊ณผ๋ชฉ - ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ํ์ฉ
๋ค๋ฅธ ํ๋ก์ธ์ค๊ฐ ๋บ์ง ๋ชปํ๋ ์ํ.
#### - ์ต์ ์ ๊ฒฝ๋ก๋ฅผ ์ฐ์ถํ๊ธฐ ์ํ ์ ๋ณด๋ก์ ํ(๊ฑฐ๋ฆฌ ๊ฐ)๋ง์ ๊ณ ๋ คํ๋ฏ๋ก, RIP๋ฅผ ์ ํํ ๊ฒฝ๋ก๊ฐ ==์ต์ ์ ๊ฒฝ๋ก๊ฐ ์๋๊ฒฝ์ฐ๊ฐ== ๋ง์ด ๋ฐ์ํ ์ ์๋ค.
๊ฒฐํฉ๋ - ๋ ๋ชจ๋๊ฐ์ ์ํธ์์ฉ, ๋๋ ์์กด๋ ์ ๋๋ฅผ ๋ํ๋ด๋ ๊ฒ.
// a[0]์ ์ฃผ์๊ฐ์ด 0์ผ๋,
int a[] = {14, 22, 30, 38};
printf("%u", &a[2]); => a[2]์๋ฆฌ์ ์ฒซ๋ฒ์งธ ์ฃผ์๊ฐ -> 18
printf("%u", a); => a[0]์๋ฆฌ์ ์ฒซ๋ฒ์งธ ์ฃผ์๊ฐ -> 10
์ฃผ์๊ฐ a[0] 14 => 10,11,12,13 / a[1] 22 => 14,15,16,17 / a[2] 30 => 18,19,20,21 / a[3] 38 => 22,23,24,25
๊ถํ์ด ์๋ ์ฌ์ฉ์๋ค๋ง ์ ๊ทผํ ์ ์๋ ๋ณด์ ๋ฐฉ๋ฒ
์์์ ๋ํ ์ ๊ทผ์ ์ฌ์ฉ์๋ ๊ทธ๋ฃน์ ์ ๋ถ์๋ฐ๋ผ ์ ํ, ์์์ ์์ ๊ถ์ ๊ฐ์ง ์ฌ๋์ด ๋ค๋ฅธ ์ฌ๋์ ์ ๊ทผ์ ํ์ฉํ๊ฑฐ๋ ์ ํํ ์ ์์
๋ฏธ๋ฆฌ ์ ํด์ง ์์์ ๋ณด์ ๋ ๋ฒจ๊ณผ ์ฌ์ฉ์์๊ฒ ํ๋ฝ๋ ์ ๊ทผ๊ถํ๋น๊ต
๋คํธ์ํฌ์์์ ๊ณต์ ๋๋ ํ์ผ์์คํ
. ๋ค๋ฅธ ์๊ฒฉ ํธ์คํธ์ ํ์ผ ์์คํ
์ ๋ก์ปฌ ๋์คํฌ์ ์ ๊ทผํ๋ฏ ๊ฐ๋จํ๊ฒ ์ ๊ทผํ์ฌ ์์ ์ ๋๋ ํ ๋ฆฌ์ฒ๋ผ ์ฌ์ฉํ ์ ์๋ค.
๋คํธ์ํฌ ๋ณด์์ ์ํ ์ ํธ๋ฆฌํฐ. ๋คํธ์ํฌ์ ๋ณด์์ ์ํด ๋ฌผ๋ฆฌ์ ์ฐ๊ฒฐ๊ณผ ์ด๋ค ์๋ฒ์ ์ด์ ์ฒด์ ๊ฐ ์๋ ์ค์ธ์ง ๋ฐ์๋ฅผ ์กฐ์ฌํ๋ ์์ฉ ํ๋ก๊ทธ๋จ.
์ด๋ค ํ๋ก์ ํธ๋ฅผ ๋ง์น๊ธฐ๊น์ง ์ํ๋๋ ์์
์ ๊ฐ ๋จ๊ณ(์ํ)๋ฅผ ๊ทธ๋ํ์ ์ ์ ์ผ๋ก ํํํ๊ณ , ์์
ํ๋๊ฐ ์๋ฃ๋์ด ๋ค์ ๋จ๊ณ๋ก ๋์ด๊ฐ๋ ์๊ฐ์ ๊ทธ๋ํ์ ๊ฐ์ ์ผ๋ก ๋ํ๋ธ ๋ฐฉํฅ ๊ทธ๋ํ.
๋คํธ์ํฌ๋ฅผ ์ ์ด๋ถ, ๋ฐ์ดํฐ ์ ๋ฌ๋ถ๋ก ๋ถ๋ฆฌํ์ฌ ๋คํธ์ํฌ ๊ด๋ฆฌ์๊ฐ ๋ณด๋ค ํจ์จ์ ์ผ๋ก ๋คํธ์ํฌ๋ฅผ ์ ์ด, ๊ด๋ฆฌํ ์ ์๋ ๊ธฐ์ .
๊ธฐ์กด์ ๋ผ์ฐํฐ, ์ค์์น ๋ฑ๊ณผ ๊ฐ์ด ํ๋์จ์ด์ ์์กดํ๋ ๋คํธ์ํฌ ์ฒด๊ณ์์ ์์ ์ฑ, ์๋, ๋ณด์ ๋ฑ์ ์ํํธ์จ์ด๋ก ์ ์ด, ๊ด๋ฆฌํ๊ธฐ ์ํด ๊ฐ๋ฐ๋จ.
๋คํธ์ํฌ ์ฅ๋น์ ํ์จ์ด ์
๊ทธ๋ ์ด๋๋ฅผ ํตํด ์ฌ์ฉ์์ ์ง์ ์ ์ธ ๋ฐ์ดํฐ ์ ์ก ๊ฒฝ๋ก ๊ด๋ฆฌ๊ฐ ๊ฐ๋ฅํ๊ณ , ๊ธฐ์กด ๋คํธ์ํฌ์๋ ์ํฅ์ ์ฃผ์ง ์์ผ๋ฉด์ ํน์ ์๋น์ค์ ์ ์ก ๊ฒฝ๋ก ์์ ์ ํตํ์ฌ ์ธํฐ๋ท์์์ ๋ฐ์ํ๋ ๋ฌธ์ ๋ฅผ ์ฒ๋ฆฌํ ์ ์์.
์์
๋ค ๊ฐ์ ์ํธ ๊ด๋ จ์ฑ, ๊ฒฐ์ ๊ฒฝ๋ก, ๊ฒฝ๊ณ์๊ฐ, ์์ํ ๋น ๋ฑ์ ์ ์ํ๋ค.
๊ฐ ์์
๋ค์ด ์ธ์ ์์ํ๊ณ ์ธ์ ์ข
๋ฃ๋๋์ง์ ๋ํ ์ผ์ ์ ๋ง๋ ๋ํ๋ฅผ ์ด์ฉํ์ฌ ํ์ํ๋ค.
์๊ฐ์ (Time-line)์ฐจํธ ๋ผ๊ณ ๋ ํ๋ค.
์ํ ๋ง๋์ ๊ธธ์ด๋ ๊ฐ ์์
์ ๊ธฐ๊ฐ์ ๋ํ๋ธ๋ค.
๋ด๊ณต ์ธ์ ์ค์
1์ ๊ฐ์๊ฐ 27๊ฐ ์ฆ 11111111 11111111 11111111 11100000 0 0 0 0 0 1 1 1 1 2 4 8 16 32 64 128 -> 32 + 64 + 128 = 224