๋ฉ๋ชจ๋ฆฌ๋ ํ๋ ์ปดํจํฐ ์์คํ ์ ๊ตฌ๋์ ์์ด์ ๋งค์ฐ ์ค์ํ๋ค.
๋ฉ๋ชจ๋ฆฌ๋ Large Array of bytes๋ก ์ด๋ฃจ์ด์ ธ ์๊ณ , ๊ฐ๊ฐ์ ์ฃผ์๋ฅผ ๊ฐ์ง๊ณ ์๋ค.
CPU๋ Program Counter๋ฅผ ์ฐธ์กฐํ๋ ๋ฉ๋ชจ๋ฆฌ๋ก๋ถํฐ ๋ช ๋ น๋ค์ ๊ฐ์ง๊ณ ์จ๋ค.
๊ทธ๋ฆฌ๊ณ ์ด๋ฌํ ๋ช ๋ น๋ค์ ์ถ๊ฐ์ ์ธ ๋ก๋ฉ์ด๋ ํน์ ํ ๋ฉ๋ชจ๋ฆฌ ์ด๋๋ ์ค์ ์ ์ฅ์ ๋ถ๋ฌ์ผ์ผํจ๋ค.
์ ํ์ ์ธ Instruction-Execution cycle์์ ์๋ฅผ๋ค์ด ์ฒ์์ ๋ฉ๋ชจ๋ฆฌ๋ก๋ถํฐ instruction์ ๊ฐ์ง๊ณ ์จ๋ค.
instruction์ ํด๋ ๋๊ณ ๋ฉ๋ชจ๋ฆฌ๋ก๋ถํฐ ๊ฐ์ ธ์จ ํผ์ฐ์ฐ์๋ฅผ ๋ฐ์์ํจ๋ค.
Instruction์ด ํผ์ฐ์ฐ์๋ก ์คํ๋๊ณ ๋์ ๊ฒฐ๊ณผ๋ ๋ค์ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ๋ ๊ฒ์ด๋ค.
๋ฉ๋ชจ๋ฆฌ์ ๋์ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์์ ํ๋ฆ๋ง์ ๋ณผ ๊ฒ์ด๋ค ;
(์ด๋ป๊ฒ ์๊ฒจ๋ฌ๋ ์ง, ๋ฌด์์ ์ํ ๊ฒ์ธ์ง ์ ํ ๋ชจ๋ฅธ๋ค.)
๊ทธ์ ๋ง์ถ์ด, ์ฐ๋ฆฌ๋ ํ๋ก๊ทธ๋จ์ด ์ด๋ป๊ฒ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ ์์ฑํ๋์ง ๋ฌด์ํด๋ ๋๋ค.
์ฐ๋ฆฌ๋ ๋จ์ง ์คํ๋๋ ํ๋ก๊ทธ๋จ์ ์ํด ๋ฉ๋ชจ๋ฆฌ ์์ฑ๊ณผ์ ์ ์์๋ง ๊ด์ฌ์ด ์๋ค.
๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ ๋ ์ง์คํฐ๋ ํ๋ก์ธ์ ๋ด์ ์์ฑ ๋์ด์๊ณ
CPU๊ฐ ์ง์ ์ ๊ทผํ ์ ์๋๋ก ์ผ๋ฐ์ ์ธ ๋ชฉ์ ์ ์ ์ฅ์์ด๋ค.
๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ argument๋ก ๊ฐ์ ธ๊ฐ๋ ๊ธฐ๊ณ๋ช ๋ น์ด๊ฐ ์์ง๋ง ๋์คํฌ ์ฃผ์๋ฅผ ์ฐจ์งํ์ง๋ ์๋๋ค.
๊ทธ๋ฌ๋ฏ๋ก ์คํ์์ ์ด๋ค ๋ช ๋ น์ด์ด๋ , ๋ช ๋ น์ด์ ์ํด ์ฌ์ฉ๋๋ ๋ฐ์ดํฐ๊ฐ ์ด๋ค ๊ฒ์ด๋ ,
์ด๋ฌํ ์ง์ -์ ๊ทผ ์ ์ฅ์ ๊ธฐ๊ธฐ์ค ํ๋์ฌ์ผ ํ๋ค.
๋ง์ฝ ๋ฐ์ดํฐ๊ฐ ๋ฉ๋ชจ๋ฆฌ์์ ์์ผ๋ฉด CPU๊ฐ ๊ทธ๊ฒ์ ๊ตฌ๋ํ๊ธฐ ์ด์ ์ ์ฎ๊ฒจ์ ธ์ผ๋ง ํ๋ค.
CPU์์ ์๋ Register๋ ์ผ๋ฐ์ ์ผ๋ก ํ Cycle์ CPU clock์์ ์ ๊ทผ์ด ๊ฐ๋ฅํ๋ค.
๋๋ถ๋ถ์ CPU๋ instruction์ ํด๋ ํ๊ณ register contents ์์์
ํ clock tick๋น ํ๊ฐ ํน์ ์ฌ๋ฌ๊ฐ์ ๊ตฌ๋๋ฅ ๋ก ๋จ์ํ ๊ตฌ๋์ ํ๋ค.
๋ฉ๋ชจ๋ฆฌ ๋ฒ์ค ์์์ ์ ์ก์ ํตํด ์ ๊ทผํ๋ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ๊ฐ ๊ฐ์ง๋ ์๋ค.
๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ์ ์๋ฃํ๋ ๊ฒ์ ๋ง์ CPU clock Cycle์ด ์๊ตฌ๋๋ค.
๋ช๋ช ์ผ์ด์ค์์, ํ๋ก์ธ์ค๋ stallํด์ผํ๊ณ ์๋ํ๋ฉด ์คํ๋๊ณ ์๋ ๋ช ๋ น์
์์ํ ๋ฐ์ดํฐ๊ฐ ๋ถ์กฑํ๊ธฐ ๋๋ฌธ์ด๋ค.
์ด๋ฌํ ์ํฉ์ ๋ฉ๋ชจ๋ฆฌ์ ๊ทผ์ ๋น๋ ๋๋ฌธ์ ์ฉ๋ฉ๋ ์ ์๋ค.
์กฐ์น๋ฒ์ CPU์ ๋ฉ์ธ๋ฉ๋ชจ๋ฆฌ ์ฌ์ด์ ๋น ๋ฅธ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ถ๊ฐํ๋๊ฒ์ด๋ค.
์ ํ์ ์ผ๋ก, ๋น ๋ฅธ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ํ CPU chip๊ฐ์ ๊ฒ ๋ค
๊ฐ ํ๋ก์ธ์ค๋ ๋ถ๋ฆฌ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ๊ฐ์ ธ์ผ ํ๋ค.
ํ๋ก์ธ์ค๋ณ๋ก ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ๋๋๊ณ ํ๋ก์ธ์ค๋ค์ ๋ค๋ฅธ ๊ฒ๋ค๋ก ๋ถํฐ ์งํค๋๊ฒ์ด ๋ค์ค ํ๋ก์ธ์ค์ ๊ธฐ์ด๋ค.
์ฐ๋ฆฌ๋ ๋๊ฐ์ ๋ ์ง์คํฐ๋ฅผ ์ด์ฉํด ๋ณดํธ๋ฅผ ์ ๊ณตํ ์ ์๋ค. (base and a limit .)
Base register๋ ๊ฐ์ฅ ์์ physical memory address์ด๊ณ ,
Limit register๋ ๋ฒ์์ Size๋ฅผ ์๋ฏธํ๋ค.