230109(์)
๐ ์ฑ์ฅ์ผ์ง 3.1
์ฑ
ํ๋ณตํ ์ด๊ธฐ์ฃผ์์(์จ์ธ ๋ค์ด์ด)
์ ๋ด์ฉ์ ์๊ทน๋ฐ์ ์์ํ๋ ์๋ฐํ ์ฑ์ฅ๊ธฐ๋ก
์ด์์๋ ๊ฝ๊ณผ ์ฃฝ์ ๊ฝ์ ์ด๋ป๊ฒ ๊ตฌ๋ณํ๋๊ฐ?
์ฑ์ฅํ๊ณ ์๋ ๊ฒ์ด ์ด์ ์๋ ๊ฒ์ด๋ค.
์๋ช ์ ์ ์ผํ ์ฆ๊ฑฐ๋ ์ฑ์ฅ์ด๋ค!
๐ณ ํค์๋ (1.0)
์ต๋ํ ๊ฐ๋จํ๊ฒ ์ ๋ฆฌ, ์ถํ์ ๋ณด๋ฉด์ ์ค์ค๋ก ์ค๋ช
๐ ๊ฒฝํ ์์ฃผ๋ก (2.0)
๋จ์ ์ ๋ณด๋ฅผ ์ ๋ฌํ๊ธฐ๋ณด๋ค ๋ฌด์์ ๋ฐฐ์ ๊ณ ์ด๋ป๊ฒ ํด๊ฒฐํ๋์ง ์งง๊ณ ๊ฐ๋จํ๊ฒ ์์ฑ
โ๏ธ ์ ํด์ง ํ ํ๋ฆฟ์ ๋ง์ถฐ์ (3.0)
ํค์๋, ๊ฒฝํ ๋ชจ๋ ์ข๋ค. ๋ค๋ง ๋งค์ผ ์์ฑํ๊ธฐ๋ก ๋ง์ ๋จน์๋งํผ ํต์ฌ๋ง ๊ฐ๊ฒฐํ๊ฒ ์ ๋ฆฌํ ์ ์๊ฒ ํ ํ๋ฆฟ์ ์์ฑ (3.1) 230102๋ถํฐ ์์๋๋ ํ์ต์ ๊ดํ ๋ด์ฉ ์ถ๊ฐ
๐ ์ค๋์ ํค์๋
๊ธฐ์ต์ฅ์น
๊ธฐ์ต์ฅ์น๋ ํฌ๊ฒ SSD(Storage), RAM(Memory), CPU(CACHE, REGISTER)๋ก ๋๋ ์ง๋ฉฐ ๋ค๋ก ๊ฐ์๋ก ์๋๊ฐ ๋น ๋ฅด๊ณ ๊ฐ๊ฒฉ์ด ๋น์ธ๋ค. ์ฆ, SSD์ ํ๋ก๊ทธ๋จ๋ค์ด ์ ์ฅ๋์ด์๊ณ ์ด ํ๋ก๊ทธ๋จ์ ์คํ์ํค๋ฉด RAM์ ์ฌ๋ผ๊ฐ๊ฒ ๋๋ค. ์ด ๋, ํ๋ก๊ทธ๋จ์ ์ฌ๋ฌ ๋ช ๋ น์ด๋ค์ด CPU๋ก ์ ๋ฌ๋์ด ์ฒ๋ฆฌ๋๋ค.
์ฐ๋ฆฌ๊ฐ ์์ฑํ ์ฝ๋
---(์ปดํ์ผ๋ฌ)--->์ด์ ๋ธ๋ฆฌ ์ธ์ด
---(์ด์ ๋ธ๋ฌ)--->๊ธฐ๊ณ์ด(0,1)
์ด์ ๋ธ๋ฆฌ ์ธ์ด
๊ธฐ๊ณ์ด์ ์ผ๋์ผ ๋์์ด ๋๋ ์ปดํจํฐ ํ๋ก๊ทธ๋๋ฐ์ ์ ๊ธ ์ธ์ด. ์ ๋ฅ๊ฐ ํ๋ฅด๋ 1, ํ๋ฅด์ง ์๋ 0์ ์ด์ง์๋ก ๊ตฌ์ฑ๋ ๊ธฐ๊ณ์ด๋ฅผ ์ธ๊ฐ์ ๊ด์ ์์๋ ์ดํดํ๊ธฐ ์ด๋ ต๊ธฐ ๋๋ฌธ์ ์ด์ ๋ธ๋ฆฌ ์ธ์ด๊ฐ ๋ฑ์ฅํ๋ค. ์ฐ๋ฆฌ๊ฐ ํํ ๋ฐฐ์ฐ๋ ์ธ์ด๋ค์ ๊ณ ๊ธ ์ธ์ด๋ก ์ปดํ์ผํ๋ ๋ฐ ์๊ฐ์ด ๋ค์ ๊ฑธ๋ฆฌ์ง๋ง, ์ด์ ๋ธ๋ฆฌ ์ธ์ด๋ ๊ธฐ๊ณ์ด์ ์ผ๋์ผ๋ก ๋์ํ๋๋งํผ ๊ต์ฅํ ๋น ๋ฅด๋ค. ๋ค๋ง, ์ด์ ๋ธ๋ฆฌ ์ธ์ด๋ ๋ฐฐ์ฐ๊ธฐ ์ด๋ ต๊ณ ์ ์ง๋ณด์๊ฐ ํ๋ค๋ค๋ ์ด์ ๋ก(๊ธฐ๊ณ์ด๋ณด๋ค๋ ๋ซ์ง๋ง) ํน์ํ ๊ฒฝ์ฐ๊ฐ ์๋๋ผ๋ฉด ์ฌ์ฉ๋์ง ์๋๋ค. ์ด์ ๋ธ๋ฆฌ ์ธ์ด๋ก ์ง์ ์ฝ๋ฉ์ ํ์ง ์๋๋ผ๋, ์ด์ ๋ธ๋ฆฌ ์ธ์ด๋ฅผ ์ดํดํ๋ ๊ฒ์ ์ปดํจํฐ์ ๊ตฌ์กฐ๋ฅผ ์ดํดํ๋ ๋ฐ ๋์์ด ๋๋ค.
<!-- EAX๊ฐ Destination, EBX๊ฐ Source๊ฐ ๋๋ค. -->
<!-- ์ฆ, EBX๋ฅผ EAX์ ๋ํ๋ผ๋ ์๋ฏธ์ด๋ค. -->
ADD EAX EBX
์ถ๊ฐ) ์ด์ ๋ธ๋ฆฌ ์ธ์ด์์ LOAD์ STORE๋ฅผ ๊ธฐ์ตํ์
- LOAD: Memory์์ CPU(์ ๋ ์ง์คํธ๋ฆฌ)๋ก ๊ฐ์ ๊ฐ์ ธ์จ๋ค.
- STORE: CPU(์ ๋ ์ง์คํธ๋ฆฌ)์์ ์ฐ์ฐ์ด ๋๋ ๊ฐ์ Memory๋ก ๋ณด๋ธ๋ค.
ADD, SUB ๋ฑ์ ์ฐ์ฐ ๊ณผ์ ์ Memory์ ์ฃผ์๊ฐ์ผ๋ก ํ ์ ์๋ค. ์ฆ, ๊ทธ ๊ฐ์ ์ง์ ๊ฐ์ ธ์์ ํด์ผํ๊ธฐ ๋๋ฌธ์ ์์ ๊ฐ์ด LOAD์ STORE์ ๊ณผ์ ์ ๊ฑฐ์น๋ค.
๋ ์ง์คํฐ
- CPU์ ์์ฒญ์ ์ฒ๋ฆฌํ๋ ๋ฐ์ดํฐ์ ์์๊ณต๊ฐ.(CPU์์ ์ฌ์ฉํ๋
๋ณ์
๋ผ๊ณ ์๊ฐํ์.) - ๊ณต๊ฐ ์์ฒด๊ฐ ์๊ณ ๊ฐ๊ฒฉ์ ๋น์ธ์ง๋ง, CPU์ ์ง์ ์ฐ๊ฒฐ๋์ด ์์ด ์ฐ์ฐ ์๋๊ฐ ๋งค์ฐ ๋น ๋ฅด๋ค.(RAM๋ณด๋ค ํจ์ฌ ๋ ๋น ๋ฅด๋ค.)
- CPU๋ ์์ฒด์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์๋ค.
- ๊ทธ๋ฌ๋ฏ๋ก ๋ ์ง์คํฐ๋ฅผ ์ด์ฉํ์ฌ ์ฐ์ฐ์ฒ๋ฆฌ์ ๋ฒ์ง์ง์ ์ ํ๋ค.
์ฐธ๊ณ ์๋ฃ
CPU๋ ์ด๋ป๊ฒ ์๋ํ ๊น? ์ด์ ๋ธ๋ฆฌ์ด ๊ธฐ์ด ์ฌ์ฉ๋ฒ
๐ ์์ฝ ๋ฐ ํ๋ฃจ ๊ฐ๋จ ํ๊ณ
CS๊ฐ ์ฒ์ ๋ณผ ๋๋ ์ ๋ง ๋จ์ด๋ ํ๋ํ๋ ์ดํด๊ฐ ์๋๊ณ ๋ง๋งํ๋ค. ๊ทธ๋ ์ง๋ง ํค์๋๋ถํฐ ๋ฐ๋ผ๊ฐ๋ฉด์ ๋ญ๊ฐ ๊ทธ ์ฐ๊ฒฐ์ง์ ์์ ํด์๋๋ ๋ฌด์ธ๊ฐ๊ฐ ์พ๊ฐ์ด ์๋ค. ๋, ์์ง์ ์์ ๋ถ๋ถ๋ค์ด์ง๋ง ์ปดํจํฐ์ ๊ตฌ์กฐ์ ๋ํด์ ์๊ฒ ๋๋ฉด์ ๋ด๊ฐ ์์ฑํ๋ ์๋ฐ์คํฌ๋ฆฝํธ ์ธ์ด๊ฐ ์ด๋ป๊ฒ ์ฒ๋ฆฌ๋์ด ์ปดํจํฐ๊ฐ ๋ช ๋ น์ด๋ค์ ์คํ์ํค๋์ง ์กฐ๊ธ์ด๋๋ง ์ ๊ฒ ๊ฐ๋ค. ๋ง์ฐํ๊ฒ ์๊ณ ์๋ Storage, Memory, CPU ๊ทธ๋ฆฌ๊ณ CACHE, REGISTER ๋ฑ๋ ๊ทธ ์๋ ํ๋ฆ์ ์๊ฒ ๋๋ ์์ด ์์ํ๋ค. ์ ๋ง์ ๋ง ๋ฐฐ์ธ์๋ก ๋ฐฐ์ธ ๊ฒ ๋ง์ง๋ง ์ฒ์ฒํ ๋ฐฐ์ฐ๋ฉด์ ๋์๊ฐ๋ ์ฌ๋ฏธ๊ฐ ์๋ค. ๋ด์ผ์ ๋ ์ด๋ป๊ฒ ์กฐ๊ธ์ฉ ์ฑ์ฅํ ์ง ๊ธฐ๋๋๋ค!