๐ฅ๏ธ [์ปดํจํฐ๊ตฌ์กฐ์ ์ด์์ฒด์ ] ์ปดํจํฐ ๋ถํ, ๋ฐ์ดํฐ, ๋ช ๋ น์ด
โจ ๋ฅ๋ฌ๋ ๋ชจ๋ธ์ ๋ค๋ฃจ๊ฒ ๋๋ฉด์ CPU, GPU, ๋ฉ๋ชจ๋ฆฌ ๋ฑ์ ๋ํ ์ฌ์์ ์ค์ํ๊ฒ ๋ณด๊ฒ ๋ฉ๋๋ค. ๊ทธ๋ ๋ค๋ฉด ์ด ์ปดํจํฐ ์ฌ์๋ค์ด ๋ฌด์กฐ๊ฑด ๋์ผ๋ฉด ์ข์๊น์? ์ ์ข์๊น์? ๋ฉํฐํ๋ก์ธ์ค์ ๋ฉํฐ์ค๋ ๋๋ ์ ํํ ์ด๋ค ์ฐจ์ด๊ฐ ์์๊น์? ์ปดํจํฐ ๊ตฌ์กฐ์ ์ด์์ฒด์ ๋ฅผ ๊ณต๋ถํ๊ฒ ๋๋ค๋ฉด ๋ฌธ์ ์ํฉ์ ๋น ๋ฅด๊ฒ ์ง๋จํ ์ ์๊ณ ๋ฌธ์ ํด๊ฒฐ์ ์ค๋ง๋ฆฌ๋ฅผ ๋ค์ํ๊ฒ ์ฐพ์ ์ ์์ต๋๋ค. ๊ฒฐ๊ตญ ์ปดํจํฐ ์์์ ํ๋ก๊ทธ๋จ์ด ์คํ๋๊ธฐ ๋๋ฌธ์ ๋๋ค. ํ์ด์ฌ์ ์ฃผ๋ก ์ฌ์ฉํ๊ฒ ๋๋ฉด์ ์ ํ๋ ์๋ฌ๋ค์ ๋ณด๋ฉฐ ์ปดํจํฐ์ ๋ํด ๋ ๊ณต๋ถํ๋ฉด ์ข๊ฒ ๋ค๋ ์๊ฐ์ ํผ์ ๊ณต๋ถํ๋ ์ปดํจํฐ ๊ตฌ์กฐ+์ด์์ฒด์ ์ฑ ์ ์ฝ์ผ๋ฉฐ ์ฃผ์ํ ๋ด์ฉ๋ค์ ์ ๋ฆฌํ์์ต๋๋ค. ์ฑ ์ ์ ๋ชฉ๋๋ก ํผ์์ ๊ณต๋ถํ ์ ์๊ฒ ์ฝ๊ฒ ์ค๋ช ํด์ฃผ์ด ์ ๋ง ์ฌ๋ฐ๊ฒ ์ฝ์๋ ์ฑ ์ ๋๋ค. ์ด๋ฒ ๊ธ์์๋ ์ปดํจํฐ ๊ตฌ์กฐ ํํธ๋ฅผ ๋ค๋ฃจ๊ฒ ์ต๋๋ค.
์ปดํจํฐ์ ๋ถํ๋ค
์ปดํจํฐ์ ํต์ฌ ๋ถํ๋ค์ ๋ฉ์ธ๋ณด๋(=๋ง๋๋ณด๋) ํ์ ์ฐ๊ฒฐ๋์ด ์์. ๋ฉ์ธ๋ณด๋์ ์ฐ๊ฒฐ๋ ๋ถํ๋ค์ ๋ฒ์ค๋ผ๋ ํต๋ก๋ก ์ ๋ณด๋ฅผ ์ฃผ๊ณ ๋ฐ์.
- ๋ฉ๋ชจ๋ฆฌ: ํ์ฌ ์คํ๋๋ ํ๋ก๊ทธ๋จ์ ๋ช
๋ น์ด์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๋ถํ
- ์ปดํจํฐ๊ฐ ๊บผ์ง๋ฉด ๋ฉ๋ชจ๋ฆฌ์ ์๋ ๋ฐ์ดํฐ๋ ์ญ์ ๋จ
- ์ ์ฅ๋ ๊ฐ์ ๋น ๋ฅด๊ณ ํจ์จ์ ์ผ๋ก ์ ๊ทผํ๊ธฐ ์ํด ์ฃผ์๋ผ๋ ๊ฐ๋
์ผ๋ก ์ํ๋ ์์น์ ์ ๊ทผํ ์ ์์
๋ฉ๋ชจ๋ฆฌ 1๋ฒ์ง 3๋ฒ์ง์ 4๋ฒ์ง๋ฅผ ๋ํ๋ผ 2๋ฒ์ง ์ฐ์ฐ ๊ฒฐ๊ณผ๋ฅผ ์ ์ฅํ๋ผ 3๋ฒ์ง 120 140
- CPU: ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ๋ ๋ช
๋ น์ด๋ฅผ ์ฝ์ด ๋ค์ด๊ณ , ํด์ํ๊ณ , ์คํํ๋ ๋ถํ
- CPU ๋ด๋ถ์๋ ALU(์ฐ์ ๋ ผ๋ฆฌ์ฐ์ฐ์ฅ์น), ์ ์ด์ฅ์น, ๋ ์ง์คํฐ ๋ฑ์ผ๋ก ๊ตฌ์ฑ๋์ด ์์
- ALU: ๊ณ์ฐ๊ธฐ(ํน์ ์ซ์๋ ๋ฌธ์๋ฅผ ๋ด๋ณด๋)
- ์ ์ด์ฅ์น: ์ ์ด ์ ํธ๋ผ๋ ์ ๊ธฐ ์ ํธ๋ฅผ ๋ด๋ณด๋ด๊ณ ๋ช ๋ น์ด๋ฅผ ํด์ํจ
- ๋ ์ง์คํฐ: CPU ๋ด๋ถ์ ์์ ์์ ์ ์ฅ ์ฅ์น
- ๋ณด์กฐ๊ธฐ์ต์ฅ์น: ์ ์์ด ๊บผ์ ธ๋ ๋ณด๊ดํ ํ๋ก๊ทธ๋จ์ ์ ์ฅํ๋ ๋ถํ
- ์
์ถ๋ ฅ์ฅ์น: ์ปดํจํฐ ์ธ๋ถ์ ์ฐ๊ฒฐ๋์ด ์ปดํจํฐ ๋ด๋ถ์ ์ ๋ณด๋ฅผ ๊ตํํ ์ ์๋ ๋ถํ
- ๋ง์ฐ์ค, ํ๋ฆฐํฐ, ํ๋๋์คํฌ ๋ฑ์ด ์์
- ์์คํ
๋ฒ์ค: 4๊ฐ์ ํต์ฌ ๋ถํ์ ์ฐ๊ฒฐํ๋ ๋ฒ์ค
- ์ฃผ์ ๋ฒ์ค, ๋ฐ์ดํฐ ๋ฒ์ค, ์ ์ด ๋ฒ์ค๋ก ๊ตฌ์ฑ๋์ด ์์
๋ฐ์ดํฐ
์ปดํจํฐ๋ 0 ๋๋ 1๋ฐ์ ์ด์ ํ์ง ๋ชปํจ. 0๊ณผ 1์ ๋ํ๋ด๋ ๊ฐ์ฅ ์์ ์ ๋ณด ๋จ์๋ฅผ ๋นํธ๋ผ๊ณ ํจ. ์ฐ๋ฆฌ๊ฐ ์คํํ๋ ๋ชจ๋ ํ๋ก๊ทธ๋จ์ 0๊ณผ 1๋ก ์ด๋ฃจ์ด์ ธ ์์! ๋นํธ๋ ๊ต์ฅํ ์์ ๋จ์์ด๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํธ, ํฌ๋ก๋ฐ์ดํธ, ๋ฉ๊ฐ๋ฐ์ดํธ ๊ธฐ๊ฐ๋ฐ์ดํธ, ํ ๋ผ๋ฐ์ดํธ๋ฅผ ์ฌ์ฉํจ.
1๋ฐ์ดํธ | 8๋นํธ |
1ํฌ๋ก๋ฐ์ดํธ | 1,000๋ฐ์ดํธ |
1๋ฉ๊ฐ๋ฐ์ดํธ | 1,000ํฌ๋ก๋ฐ์ดํธ |
1๊ธฐ๊ฐ๋ฐ์ดํธ | 1,000๋ฉ๊ฐ๋ฐ์ดํธ |
1ํ ๋ผ๋ฐ์ดํธ | 1,000๊ธฐ๊ฐ๋ฐ์ดํธ |
์ปดํจํฐ๊ฐ ์ดํดํ ์ ์๋ ์์ ํํ์? 2์ ๋ณด์๋ฅผ ๊ตฌํ๋ฉฐ ์์์ธ์ง ์์์ธ์ง ํ๋๊ทธ๋ฅผ ์ฌ์ฉํจ
- 2์ ๋ณด์: ์ด๋ค ์๋ฅผ ๊ทธ๋ณด๋ค ํฐ \(2^n\)์์ ๋บ ๊ฐ
- \(11_{(2)}\)์ 2์ ๋ณด์๋ \(11_{(2)}\)๋ณด๋ค ํฐ \(100_{(2)}\)์์ ๋บ \(01_{(2)}\)[์ปดํจํฐ๊ตฌ์กฐ์ ์ด์์ฒด์ ] ์ปดํจํฐ ๋ถํ, ๋ฐ์ดํฐ, ๋ช ๋ น์ด
๋ฐ์ดํฐ๋ฅผ ํํํ ๋ ์ด์ง๋ฒ์ ์ซ์์ ๊ธธ์ด๊ฐ ๋๋ฌด ๊ธธ์ด์ ธ ์ญ์ก์ง๋ฒ๋ ์์ฃผ ์ฌ์ฉ๋จ
- 0~9 ์ดํ์ ์ซ์๋ ์ํ๋ฒณ A, B, C, D, E, F๋ก ํ๊ธฐํจ
์์คํค ์ฝ๋: 7๋นํธ๋ก ์์ด ์ํ๋ฒณ, ์๋ผ๋น์ ์ซ์, ํน์ ๋ฌธ์๋ฅผ ํํํจ
โ ์์คํค ์ฝ๋๋ ํ๊ธ๊ณผ ๊ฐ์ ์์คํค ๋ฌธ์ ์งํฉ ์ธ์ ๋ฌธ์, ํน์๋ฌธ์๋ ํํํ ์ ์์
EUC-KR: ์ด์ฑ, ์ค์ฑ, ์ข ์ฑ์ ์กฐํฉ์ผ๋ก ์ด๋ฃจ์ด์ง ์์ฑ๋ ํ๋์ ๊ธ์์ ๊ณ ์ ํ ์ฝ๋๋ฅผ ๋ถ์ฌํ๋ ์ธ์ฝ๋ฉ ๋ฐฉ์
- ๊ฐ: 1, ๋: 2, ๋ค: 3, โฆ
- ๋จ์ : ๋ฏ์ ๊ฐ์ ๋ฌธ์ ์งํฉ์ ์ ์๋์ง ์์ ๊ธ์๋ ํํํ ์ ์์
- CP949: EUC-KR์ ํ์ฅ๋ ๋ฒ์
์ ๋์ฝ๋: EUC-KR๊ณผ ๊ฐ์ด ๊ฐ ๋ฌธ์๋ง๋ค ๊ณ ์ ํ ๊ฐ์ด ๋ถ์ฌ๋จ. ๋จ, ๊ธ์์ ๋ถ์ฌ๋ ๊ฐ ์์ฒด๋ฅผ ์ธ์ฝ๋ฉ๋ ๊ฐ์ผ๋ก ์ผ์ง ์๊ณ ์ด ๊ฐ์ ๋ค์ํ ๋ฐฉ๋ฒ์ผ๋ก ์ธ์ฝ๋ฉํจ
- UTF-8, UTF-16, UTF-32 ๋ฑ์ด ์์
๋ช ๋ น์ด
- ๊ธฐ๊ณ์ด: 0๊ณผ 1์ ๋ช ๋ น์ด ๋นํธ๋ก ์ด๋ฃจ์ด์ง ์ธ์ด
- ์ด์ ๋ธ๋ฆฌ์ด(=์ ๊ธ์ธ์ด): ๊ธฐ๊ณ์ด๋ฅผ ์ฝ๊ธฐ ํธํ ํํ๋ก ๋ฒ์ญํ ์ธ์ด
- ๊ธฐ๊ณ์ด ์ด์ ๋ธ๋ฆฌ์ด 0101 0101 -> push rbp 0101 1101 -> pop rbp
- ๊ณ ๊ธ์ธ์ด: ์ฌ๋์ด ์ฝ๊ณ ์ฐ๊ธฐ ํธํ ์ธ์ด. ์ ๊ธ ์ธ์ด๋ก ๋ณํ๋์ด ์คํ๋จ
- ๊ณ ๊ธ์ธ์ด๋ฅผ ์ ๊ธ์ธ์ด๋ก ๋ณํ๋๋ ๋ฐฉ๋ฒ์ ์ปดํ์ผ ๋ฐฉ์๊ณผ ์ธํฐํ๋ฆฌํธ ๋ฐฉ์์ด ์์
- ์ปดํ์ผ ์ธ์ด: ์ฝ๋ ์ ์ฒด๊ฐ ์ ๊ธ ์ธ์ด๋ก ๋ณํ๋์ด ์คํ๋๋ ๊ณ ๊ธ ์ธ์ด(C)
- ์ปดํ์ผ: ์ฝ๋ ์ ์ฒด๊ฐ ์ ๊ธ ์ธ์ด๋ก ๋ณํ๋๋ ๊ณผ์
- ์ปดํ์ผ๋ฌ: ์ปดํ์ผ์ ์ํํด ์ฃผ๋ ๋๊ตฌ
- ์ปดํ์ผ๋ฌ๊ฐ ์์ค ์ฝ๋ ๋ด์์ ์ค๋ฅ๋ฅผ ํ๋๋ผ๋ ๋ฐ๊ฒฌํ๋ฉด ํด๋น ์์ค ์ฝ๋๋ ์ปดํ์ผ์ ์คํจํจ
- ์ธํฐํ๋ฆฌํฐ ์ธ์ด: ์ธํฐํ๋ฆฌํฐ์ ์ํด ์์ค ์ฝ๋๊ฐ ํ ์ค์ฉ ์คํ๋๋ ๊ณ ๊ธ ์ธ์ด(Python)
- ์ธํฐํ๋ฆฌํฐ: ์์ค ์ฝ๋๋ฅผ ํ ์ค์ฉ ์ ๊ธ ์ธ์ด๋ก ๋ณํํ์ฌ ์คํํด ์ฃผ๋ ๋๊ตฌ
- ๋ช
๋ น์ด์ ๊ตฌ์ฑ์์: ์ฐ์ฐ ์ฝ๋์ ์คํผ๋๋
- ์ฐ์ฐ ์ฝ๋: ๋ช ๋ น์ด๊ฐ ์ํํ ์ฐ์ฐ, ์๋ ํ ์ด๋ธ์์ ์์น ๋ ๋ถ๋ถ
- ์คํผ๋๋: ์ฐ์ฐ์ ์ฌ์ฉํ ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋ ์์น, ์ฃผ์ ํ๋๋ผ๊ณ ๋ถ๋ฅด๊ธฐ๋ ํจ
push rbp mov rbp, rsp
- ์ฃผ์ ์ง์ ๋ฐฉ์: ์คํผ๋๋ ํ๋์ ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋ ์์น๋ฅผ ๋ช
์ํ ๋ ์ฐ์ฐ์ ์ฌ์ฉํ ๋ฐ์ดํฐ ์์น๋ฅผ ์ฐพ๋ ๋ฐฉ๋ฒ
- ๋ฐ์ดํฐ๋ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ๋์ด ์์ผ๋ฉฐ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ ๋ช ์ํ๋ค๋ฉด ํํํ ์ ์๋ ๋ฐ์ดํฐ์ ํฌ๊ธฐ๊ฐ ์์์ง๊ธฐ ๋๋ฌธ์ ํด๊ฒฐํ๊ธฐ ์ํด ๋ค์ํ ์ง์ ๋ฐฉ์์ด ์์
- ์ฆ์ ์ฃผ์ ์ง์ ๋ฐฉ์: ์ฐ์ฐ์ ์ฌ์ฉํ ๋ฐ์ดํฐ๋ฅผ ์ง์ ๋ช ์ํ๋ ๋ฐฉ์. ํํํ ์ ์๋ ๋ฐ์ดํฐ์ ํฌ๊ธฐ๊ฐ ์์์ง
- ์ง์ ์ฃผ์ ์ง์ ๋ฐฉ์: ์ ํจ ์ฃผ์๋ฅผ ์ง์ ์ ์ผ๋ก ๋ช
์ํ๋ ๋ฐฉ์
- ์ ํจ ์ฃผ์: ์ฐ์ฐ ์ฝ๋์ ์ฌ์ฉํ ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋ ์์น
- ๊ฐ์ ์ฃผ์ ์ง์ ๋ฐฉ์: ์ ํจ ์ฃผ์์ ์ฃผ์๋ฅผ ์คํผ๋๋ ํ๋์ ๋ช ์ํ๋ ๋ฐฉ์. ๋๋ฒ์ ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ์ด ํ์ํ๊ธฐ ๋๋ฌธ์ ์์ ๋ ๋ฐฉ์๋ณด๋ค ๋๋ฆผ
- ๋ ์ง์คํฐ ์ฃผ์ ์ง์ ๋ฐฉ์: ์ฐ์ฐ์ ์ฌ์ฉํ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ๋ ์ง์คํฐ๋ฅผ ์คํผ๋๋ ํ๋์ ์ง์ ๋ช ์ํ๋ ๋ฐฉ์, ๋ ์ง์คํฐ์ ์ ๊ทผํ๊ธฐ ๋๋ฌธ์ ์๋๋ฅผ ๋น ๋ฅด์ง๋ง ๋ ์ง์คํฐ ํฌ๊ธฐ์ ์ ํ์ด ์๊ธธ ์ ์์
- ๋ ์ง์คํฐ ๊ฐ์ ์ฃผ์ ์ง์ ๋ฐฉ์: ์ฐ์ฐ์ ์ฌ์ฉํ ๋ฐ์ดํฐ๋ฅผ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅํ๊ณ , ๊ทธ ์ฃผ์(์ ํจ ์ฃผ์)๋ฅผ ์ ์ฅํ ๋ ์ง์คํฐ๋ฅผ ์คํผ๋๋ ํ๋์ ๋ช ์ํ๋ ๋ฐฉ์, ๋ฉ๋ชจ๋ฆฌ์ ์ ๊ทผํ๋ ํ์๋ ํ ๋ฒ, ๋ ์ง์คํฐ์ ์ ๊ทผํ๊ธฐ ๋๋ฌธ์ ๊ฐ์ ์ฃผ์ ์ง์ ๋ฐฉ์๋ณด๋ค ๋น ๋ฆ
๋ง์น๋ฉฐ
ํ์ด์ฌ์ ์ ๊ธ ์ธ์ด ๋ณํ ๋ฐฉ์๊ณผ ์ปดํจํฐ์ ์ฃผ์ ๊ตฌ์ฑ ์์๋ฅผ ์์ธํ๊ฒ ์ ์ ์์์ต๋๋ค. computer vision ๋ถ์ผ์์ ffmpeg๋ฅผ ์์ฃผ ์ฌ์ฉํ๋๋ฐ์. ffmpeg๊ฐ C์ ์ด์ ๋ธ๋ฆฌ์ด๋ก ๋์ด ์๋ค๋ ๊ฒ์ ์๋กญ๊ฒ ์ ์ ์์์ต๋๋ค. ๊ณต๋ถ๋ฅผ ํ๋ฉด์ ๋จ์ํ ์ธ์ฐ๋ ๊ฒ์ด ์๋ ์ดํดํ๋ฉด์ ์ฝ๊ฒ ๋๋ ๊ทธ๋์ ๋ชฐ๋์์๋ ์ฌ์ฉํ๋ ์ธ์ด๋ค์ด ์ดํด๊ฐ๋ ์๊ฐ์ด์์ต๋๋ค. ๊ธด ๊ธ ์ฝ์ด์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค!๐ฅ