ํ๋ก๊ทธ๋จ์ ๋ด๋ถ ์์ฉ ํ๋ก๊ทธ๋จ์ ์คํํ๊ธฐ ์ํด์๋ ์์ฉ ํ๋ก๊ทธ๋จ์ด ํ์๋ก ํ๋ ์ฌ๋ฌ๊ฐ์ง ๊ธฐ๋ฅ์ ๊ตฌํํ๋ ๋ณต์กํ ์ํํธ์จ์ด ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๊ฒ ๋ฉ๋๋ค. ๋ฐ๋ฉด ์ปดํจํฐ์ ํ๋์จ์ด๋ ์์ฃผ ๋จ์ํ ์ ์์ค์ ๋ช
๋ น์ด(์ธ์คํธ๋ญ์
)๋ฅผ ์คํํ ์ ์์ ๋ฟ์
๋๋ค. ๋ฐ๋ผ์ ์์ฉ ํ๋ก๊ทธ๋จ์ ์ปดํจํฐ์์ ์คํํ๊ธฐ ์ํด์๋ ์์ฑ๋ ๋ณต์กํ ์์
๋ค์ ์์ฃผ ๋จ์ํ ๋ช
๋ น์ด๋ก ๋ฒ์ญํ๋ ๊ณผ์ ์ด ํ์ํฉ๋๋ค. ์ด๋ฌํ ๊ณผ์ ์ ์ฌ๋ฌ ๊ณ์ธต์ ์ํํธ์จ์ด ์ถ์ํ(Abstraction)๋ฅผ ํตํด ๊ฐ๋ฅํ๊ฒ ๋ง๋ค์์ต๋๋ค. ์ํํธ์จ์ด ๊ณ์ธต์ ์๋์ ๊ฐ์ด ๊ตฌ์ฑ๋ฉ๋๋ค. ์์ฉ ์ํํธ์จ์ด(Application software, ์์ฉ ํ๋ก๊ทธ๋จ)๊ฐ ๊ณ์ธต์ ๊ฐ์ฅ ๋ฐ๊นฅ์ชฝ์ ์์นํ๋ฉฐ, ์ฌ๋ฌ๊ฐ์ง ์์คํ
์ํํธ์จ์ด(System software)๊ฐ ํ๋์จ์ด์ ์์ฉ ํ๋ก๊ทธ๋จ ์ฌ์ด์ ์กด..
๐ฅ Computer Science
์ปดํจํฐ์ ์๋ ๊ธธ์ด ๋ชจ๋ ์ปดํจํฐ๋ ์๋(word) ํฌ๊ธฐ๋ฅผ ๊ท๊ฒฉ์ผ๋ก ๊ฐ์ง๊ฒ ๋๋๋ฐ, ์ด๋ ๋ฉ๋ชจ๋ฆฌ์์ ๋ ์ง์คํฐ๋ก ๋ฐ์ดํฐ๋ฅผ ์ฎ๊ธฐ๊ฑฐ๋, ALU์ ํตํด ๋ฐ์ดํฐ๋ฅผ ์กฐ์ํ๊ฑฐ๋ ํ ๋, ํ๋์ ๋ช
๋ น์ด๋ก ์คํ๋ ์ ์๋ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๋จ์์
๋๋ค. ํ๋์ ๊ฐ์์ฃผ์๋ ํ ๊ฐ์ ์๋๋ก ์ธ์ฝ๋ฉ๋ฉ๋๋ค. ์ฆ ์ด ์๋ ํฌ๊ธฐ๋ฅผ ๊ฒฐ์ ํ๋ ๊ฐ์ฅ ์ค์ํ ์์คํ
๋ณ์๊ฐ ๊ฐ์ ์ฃผ์๊ณต๊ฐ์ ์ต๋ ํฌ๊ธฐ์
๋๋ค. $\omega $ ๋นํธ ์๋ ํฌ๊ธฐ๋ฅผ ๊ฐ๋ ์ปดํจํฐ์์, ๊ฐ์์ฃผ์๋ 0์์ $2^\omega - 1$ ์ ๋ฒ์๋ฅผ ๊ฐ์ง๋ฉฐ, ํ๋ก๊ทธ๋จ์ ์ต๋ $2^\omega$ ๋ฐ์ดํธ์ ์ ๊ทผํ ์ ์๊ฒ ๋ฉ๋๋ค. ์๋ฅผ ๋ค๋ฉด 32๋นํธ ์ปดํจํฐ์์ ์ฃผ์ ๋ฒ์๋ 4GB๋ก ์ ํ๋๋ฉฐ, 64๋นํธ ์๋ ์ปดํจํฐ๋ 16 ์์ฌ๋ฐ์ดํธ(EB), x86-64 ์ปดํจํฐ๋ 48๋นํธ ์ฃผ์๋ฅผ ์ง์ํ๋ฏ๋ก..
์ปดํจํฐ ์์คํ
์ปดํจํฐ ์์คํ
์ ํ๋์จ์ด์ ์์คํ
ํ๋ก๊ทธ๋จ(์์คํ
์ํํธ์จ์ด)์ผ๋ก ๊ตฌ์ฑ๋๋ฉฐ, ์ด๋ค์ด ํจ๊ป ์๋ํ์ฌ ์์ฉ ํ๋ก๊ทธ๋จ(์์ฉ ์ํํธ์จ์ด)์ ์คํํฉ๋๋ค. (ํ๋ก๊ทธ๋จ๊ณผ ์ํํธ์จ์ด๋ ๋์ผํ ์๋ฏธ์๋ฉฐ, ์์ผ๋ก ๋ ๋จ์ด๋ฅผ ๋ฒ๊ฐ์๊ฐ๋ฉฐ ์ฌ์ฉํ์ฌ๋ ์ฐจ์ด๋ ์๋ค๋ ๊ฒ์ ๋ฏธ๋ฆฌ ๋ง์๋๋ฆฝ๋๋ค.) ํ๋์จ์ด๋ ํ๋ก์ธ์, ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ, ์
์ถ๋ ฅ ์ฅ์น๋ค๋ก ๊ตฌ์ฑ๋์ด ์์ต๋๋ค. ์์คํ
์ํํธ์จ์ด๋ ์ปดํ์ผ๋ฌ์ ์ด์์ฒด์ ๋ฑ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ์์ฉ ํ๋ก๊ทธ๋จ์ ๊ณ ๊ธ ์ธ์ด๋ก ์์ฑ๋ฉ๋๋ค. ์ ๋ณด๋ ๋นํธ์ ์ปจํ
์คํธ๋ก ์ด๋ฃจ์ด์ง๋๋ค ์์ค ํ๋ก๊ทธ๋จ์ 0๊ณผ 1๋ก ํ์๋๋ ๋นํธ๋ค๋ก ๊ตฌ์ฑ๋์ด ์์ต๋๋ค. ํ๋ก๊ทธ๋จ์ ํ
์คํธ ๋ฌธ์๋ ๋ฐ์ดํธ๋ก ๋ํ๋ด์ด์ง๋๋ฐ, ๋ฐ์ดํธ๋ 8๋นํธ ๋จ์๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ๋๋ถ๋ถ์ ์ปดํจํฐ ์์คํ
์์ ํ
์คํธ ๋ฌธ์๋ ์์คํค(ASCII) ํ์ค์ ์ฌ..
๐ง ๋ถํ ์ ๋ณต์ด ๋ญ์์? ์ผ๋ฐ์ ์ผ๋ก ์ด๋ ํ ๋ฌธ์ ๋ฅผ ๋ ์์ ๋ฌธ์ ๋ก ๋ถํ ํ๊ณ , ๋ถํ ํ ๋ฌธ์ ๋ค์ ํด๊ฒฐํ ํ ์กฐํฉํ์ฌ ํฐ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ์๊ณ ๋ฆฌ์ฆ์ ์๋ฏธํฉ๋๋ค. ๊ณผ์ ์ ๋์ดํ์๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค. 1. ์ฃผ์ด์ง ๋ฌธ์ ๋ฅผ ๋ ์์ ๋ฌธ์ (Subproblem)์ผ๋ก ๋๋๋๋ค. ์ด๋ ์์์ง ๋ฌธ์ ๋ ๋ณธ์ง์ ์ผ๋ก ํฐ ๋ฌธ์ ์ ๋์ผํ๋ ๋จ์ง ์
๋ ฅ(input)์ ํฌ๊ธฐ๋ง ์์์ง ๋ฌธ์ ๋ฅผ ์๋ฏธํฉ๋๋ค. 2. 1๋ฒ ๊ณผ์ ์์ ๋๋ Subproblem ๋ค์ ์ฌ๊ท์ ์ผ๋ก(๋ ์์ ๋ฌธ์ ๋ก ๋๋๋ฉฐ) ํด๊ฒฐํฉ๋๋ค. 3. 2๋ฒ์์ ํด๊ฒฐํ Subproblem๋ค์ ๋ต์ ์ ์ ํ๊ฒ ์กฐํฉํ์ฌ, ๊ธฐ์กด ํฐ ๋ฌธ์ ์ ๋ต์ ๋์ถํฉ๋๋ค. 1๋ฒ์ ๊ณผ์ ์ Divide 2, 3๋ฒ์ ๊ณผ์ ์ Conquer ๊ณผ์ ์ ํด๋นํฉ๋๋ค. ๐ง ๋ถํ ์ ๋ณต์ ์ผ๋ฐ์ ์ธ ํจํด ๋ถํ ์ ๋ณต์ ์ผ๋ฐ์ ์ผ๋ก ๋ค์๊ณผ..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FHHrif%2FbtrLQnVZpch%2FmsOHbzAxCakcUCjYKRzFY0%2Fimg.png)
๐ง ๊ณฑํ๊ธฐ ์๊ณ ๋ฆฌ์ฆ ์ฑ๋ฅ ๋ถ์ ์ฐ๋ฆฌ๊ฐ ํํ ๊ณฑํ๊ธฐ ๊ณ์ฐ์ ํ ๋ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ํตํด n-bit ์ด์ง์ ๊ณฑํ๊ธฐ ์๊ณ ๋ฆฌ์ฆ์ ์๊ฐ ๋ณต์ก๋๋ฅผ ๊ตฌํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. ์ฐ์ ์ผ๋ฐ์ ์ธ ๊ณ์ฐ ๊ณผ์ ์ ์๋์ ๊ฐ์ต๋๋ค. ๊ณฑํ๊ธฐ์ ๊ณ์ฐ์์๋ ๊ณฑํ๋ ์(y)์ ๊ฐ bit์ ๋ํ์ฌ, ์ด๋ ์ฐ์ฐ(์ฃผํญ์ ํ์ดํ๋ก ํ์)์ ์งํํ๊ฒ ๋ฉ๋๋ค. ์ฒซ ๊ณผ์ ์์๋ 0๋ฒ, ๋๋ฒ์งธ ๊ณผ์ ์์๋ 1๋ฒ, ์ธ๋ฒ์งธ ๊ณผ์ ์์๋ 2๋ฒ, .... n๋ฒ์งธ ๊ณผ์ ์์๋ n-1๋ฒ์ ์ด๋ ์ฐ์ฐ์ด ํ์ํฉ๋๋ค. ์ฆ ์ด๋ฅผ ๋น
์ค ํ๊ธฐ๋ฒ์ ํตํด ๋ํ๋ด๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค. $$O(1) + O(2) + \cdots + O(n-1) = O(n^{2})$$ ์ด๋ ์ฐ์ฐ์ ๋ชจ๋ ์งํํ ํ์๋, ์ต๋ 2n bit๋ก ์ด๋ฃจ์ด์ง ์ซ์ n๊ฐ์ ๋ํ์ฌ add ์ฐ์ฐ์ ์งํํด์ผ ํฉ๋๋ค. ์ด๋ ํ๋ฒ์..
๐ง ์๊ณ ๋ฆฌ์ฆ? ์ด๋ค ๋ฌธ์ ๋ฅผ ํ๊ธฐ ์ํ ์ ํํ ์ ์ฐจ์ ๋ฐฉ๋ฒ์ ์๋ฏธํฉ๋๋ค. ์ ์ ์์์์ '๋ฌธ์ '๋ ๋ณดํต ์
๋ ฅ๊ฐ์ด ๋์ผํ ๊ฒฝ์ฐ ์ถ๋ ฅ๊ฐ์ด ๋์ผํ(= ์ํ์ ์ผ๋ก ์๋ฐํ ์ ์๋) ๋ฌธ์ ๋ฅผ ์๋ฏธํฉ๋๋ค. ์ ์ฐจ์ ๋ฐฉ๋ฒ? ์ ํฌ๋ ๊ณ์ฐ ๋ฌธ์ ๋ฅผ ํ ๋ ์ซ์์ ์ฌ์น์ฐ์ฐ์ ์ด์ฉํ์ฌ ๋ฌธ์ ๋ฅผ ํ์ดํ๋ ๊ฒ ์ฒ๋ผ ์ปดํจํฐ๋ก ๊ณ์ฐ ๋ฌธ์ ๋ฅผ ํ๊ธฐ ์ํด์๋ ์ปดํจํฐ์ ์ฃผ์ด์ง ๋ช
๋ น์ด ์งํฉ(instruction set)์ ์ด์ฉํ์ฌ ํ์ดํฉ๋๋ค. ๐ง ์๊ณ ๋ฆฌ์ฆ์ ์ฑ๋ฅ ๋ถ์ ์๊ณ ๋ฆฌ์ฆ์ ์ฑ๋ฅ์ ๋ถ์ํ๋ ๋ฐฉ๋ฒ์ผ๋ก๋ ์ค์ ๋ก ์์์๊ฐ๊ณผ ์ข
๋ฃ์๊ฐ์ ์ธก์ ํ์ฌ ๋ถ์ํ๋ ์คํ์ ๋ถ์๊ณผ, ์ด๋ก ์ ์ผ๋ก ๊ธฐ์ ํ์ฌ ์ฑ๋ฅ์ ์ธก์ ํ๋ ์ด๋ก ์ ๋ถ์ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. ์คํ์ ๋ถ์์ ๋๋๋ก ์ ์ฉํ์ง๋ง, ๋ค์ํ ์ธ๋ถ ์์ธ๋ค(์๋ฅผ ๋ค์ด, ์ปดํจํฐ์ ํ๋์จ์ด ์ฌ์)์ ์ํด ์ฑ๋ฅ์ ์ ํํ๊ฒ ๋ถ์ํ ..
์๋ก ์์ ๋ฐฐ์ด ์ ํ ์คํ ๋งํ์ ํธ์๋ค์ด ์คํ ๋งํ๋ฅผ ๋น๊ตํด๋ณด๋ฉด, ์์ ์ ์ฅ์ฅ์์ ํน์ฑ์ด ๋ ์ฌ์ด์ ์ฐจ์ด๋ฅผ ๋ง๋ค์ด๋์ ์ ์ ์์ต๋๋ค. ๋ง์ฝ ์ ์ฅ์ฅ์๊ฐ ์๋ค๋ฉด ์ ํ ์คํ ๋งํ์ด๋ฉฐ, ์ ์ฅ์ฅ์๊ฐ ์คํ์ด๋ผ๋ฉด ์ ํ ์คํ ๋งํ๋ณด๋ค ๋ ๊ฐ๋ ฅํ ํธ์๋ค์ด ์คํ ๋งํ๋ฅผ ๊ฐ๊ฒ ๋ฉ๋๋ค. ๋ง์ฝ ์คํ ๋งํ์ ์ข ๋ ์ ์ฐํ ์ ์ฅ์ฅ์๋ฅผ ๋ํด์ค๋ค๋ฉด, ๋์ฑ ๊ฐ๋ ฅํ ์ธ์ด๊ตฐ์ ๋ฐ๊ฒฌํ ์ ์์ ๊ฒ์
๋๋ค. ์๋ฅผ ๋ค์ด ๋ ๊ฐ, ์ธ ๊ฐ์ ์คํ, ํ, ๋๋ ๋ค๋ฅธ ์ ์ฅ ์ฅ์น๋ฅผ ์ฌ์ฉํ๋ค๋ฉด ์ด๋ค ๊ฒฐ๊ณผ๊ฐ ๋์ฌ๊น์? ๊ฐ๊ฐ์ ์ ์ฅ์ฅ์๋ ์๋ก์ด ์ข
๋ฅ์ ์คํ ๋งํ๋ฅผ ์ ์ํ๊ณ , ๊ทธ๊ฒ์ ํตํ์ฌ ์๋ก์ด ์ธ์ด๊ตฐ์ ์ ์ํ ์ ์์๊น์? ์ด๋ฌํ ์ ๊ทผ์ ๋๋ถ๋ถ์ ๊ฒฝ์ฐ ํฅ๋ฏธ๋ก์ด ๊ฒฐ๊ณผ๋ฅผ ์ด๋์ด๋ด์ง๋ ๋ชปํ์ต๋๋ค. ๊ฐ์ฅ ๊ฐ๋ ฅํ ์คํ ๋งํ์ ๊ณ์ฐ์ ํ๊ณ์ ๋ํ์ฌ ๋ฌด์์ ์ด์ผ๊ธฐํ ์ ์์๊น์?..
๋ฌธ๋งฅ-์์ ๋ฌธ๋ฒ์ ์ ํ ์คํ ๋งํ๋ก๋ ์ธ์๋ ์ ์์ผ๋ฉฐ, ํธ์๋ค์ด ์คํ ๋งํ์ ์ํด์ ์ธ์๋ ์ ์์ต๋๋ค. ํธ์๋ค์ด ์คํ ๋งํ๋ ์คํ ๋งํ์ ๋น์ทํ ์๊น์๋ฅผ ์ง๋
์ผ๋, ์คํ(Stack)์ ์ถ๊ฐ๋ก ์ฌ์ฉํฉ๋๋ค. ๋น๊ฒฐ์ ์ ํธ์๋ค์ด ์คํ ๋งํ (NFDA) ํธ์๋ค์ด ์คํ ๋งํ๋ ๋ค์๊ณผ ๊ฐ์ด ํํ๋ฉ๋๋ค. ์ ์ด ์ ๋์ ๊ฐ ์์ง์์ ์
๋ ฅ ํ์ผ๋ก๋ถํฐ ํ๋์ ์ฌ๋ฒ์ ์ฝ๊ณ , ๋์์ ์คํ ์ฐ์ฐ์ ํตํ์ฌ ์คํ์ ๋ด์ฉ์ ๋ฐ๊ฟ๋๋ค. ์ ์ด ์ ๋์ ๊ฐ ์์ง์์ ํ์ฌ์ ์
๋ ฅ๋ฟ ์๋๋ผ, ํ์ฌ ์คํ์ Top์ ์๋ ์ฌ๋ฒ์ ์ํ์ฌ ๊ฒฐ์ ๋ฉ๋๋ค. ์์ง์์ ๊ฒฐ๊ณผ๋ ์ ์ด ์ ๋์ ์๋ก์ด ์ํ์ ์คํ์ ํฑ์์์ ๋ณํ์
๋๋ค. ๋น๊ฒฐ์ ์ ํธ์๋ค์ด ์ธ์๊ธฐ (nondeterminisitc pushdown acceptor, npda)๋ ๋ค์๊ณผ ๊ฐ์ด ์ ์๋ฉ๋๋ค. $$M = ..