๋ ์ง์คํฐ
-
๋ณดํธ๋์ด ์๋ ๊ธ์ ๋๋ค.
๊ธฐ๊ณ์ด๋ก ํ๋ก๊ทธ๋๋ฐ์ ํ๋ ๊ฒฝ์ฐ๋ณดํธ๋์ด ์๋ ๊ธ์ ๋๋ค.
2021.01.12 -
๋ฆฌ๋ฒ์ฑ ์ ๋ฌธ ์ด๋ผ๋ ์ฑ ์ ์ฝ์ผ๋ฉด์ ์ ๊ฒ ๋์์ด ๋์๋ ์ ๋ณด๋ค์ ์กฐ๊ธ ๋ ์ด๊ฒ ์ ๊ฒ ์ฐธ๊ณ ํด์ ๊ณต๋ถํ ๋ด์ฉ์ ๋๋ค. ์ ๊ฐ ๊ณต๋ถํ ๊ฒ์ ๋ณต์ตํ๊ณ ์ฐพ์๋ณผ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฐ ๊ธ์ ๋๋ค ํน์ ํ๋ฆฐ ๋ถ๋ถ์ด ์๋ค๋ฉด ๋๊ธ๋ก ์ง์ ํด์ฃผ์ธ์! [section 1 - ๋ฆฌ๋ฒ์ฑ์ ์ํ ํ๋ก๊ทธ๋จ ์คํ ๊ตฌ์กฐ] ์ปดํจํฐ์ ๊ธฐ๋ณธ์ ์ธ ๊ตฌ์ฑ์์๋ CPU, ๋ฉ๋ชจ๋ฆฌ, ํ๋๋์คํฌ ์ด๋ค. ํ๋ก๊ทธ๋จ์ ๋ง๋ค์ด์ ๋ฐฐํฌํ๋ฉด ํ๋ก๊ทธ๋จ์ ์คํํ ์ ์๋ ํ์ผ(exe)์ ๊ธฐ๋ณธ์ ์ผ๋ก HDD์ ์ ์ฅ๋๋ค. CPU๋ ์ ์ด์ฅ์น, ์ฐ์ฐ์ฅ์น, ๋ ์ง์คํฐ๋ก ๋๋จ. ์๋๋ CPU๊ฐ ๋ ์ง์คํฐ๋ฅผ ์ฌ์ฉํ๋ ์ด์ โผ ๋ ์ง์คํฐ๊ฐ ๊ฐ์ฅ ๋น ๋ฆ ๋ฉ๋ชจ๋ฆฌ ๊ตฌ์กฐ goodgid.github.io/Memory-Structure/ > ์ด ์ฃผ์์์ ๋งค์ฐ ์์ธํ ์ค๋ช ๋์ด์์ผ๋ ์ฐธ๊ณ ํด์ฃผ์ธ์. ํ๋ก๊ทธ๋จ ๋์๊ณผ์ ์๋..
[๋ฆฌ๋ฒ์ฑ ์ ๋ฌธ] ํ๋ก๊ทธ๋จ ์คํ ๊ตฌ์กฐ๋ฆฌ๋ฒ์ฑ ์ ๋ฌธ ์ด๋ผ๋ ์ฑ ์ ์ฝ์ผ๋ฉด์ ์ ๊ฒ ๋์์ด ๋์๋ ์ ๋ณด๋ค์ ์กฐ๊ธ ๋ ์ด๊ฒ ์ ๊ฒ ์ฐธ๊ณ ํด์ ๊ณต๋ถํ ๋ด์ฉ์ ๋๋ค. ์ ๊ฐ ๊ณต๋ถํ ๊ฒ์ ๋ณต์ตํ๊ณ ์ฐพ์๋ณผ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฐ ๊ธ์ ๋๋ค ํน์ ํ๋ฆฐ ๋ถ๋ถ์ด ์๋ค๋ฉด ๋๊ธ๋ก ์ง์ ํด์ฃผ์ธ์! [section 1 - ๋ฆฌ๋ฒ์ฑ์ ์ํ ํ๋ก๊ทธ๋จ ์คํ ๊ตฌ์กฐ] ์ปดํจํฐ์ ๊ธฐ๋ณธ์ ์ธ ๊ตฌ์ฑ์์๋ CPU, ๋ฉ๋ชจ๋ฆฌ, ํ๋๋์คํฌ ์ด๋ค. ํ๋ก๊ทธ๋จ์ ๋ง๋ค์ด์ ๋ฐฐํฌํ๋ฉด ํ๋ก๊ทธ๋จ์ ์คํํ ์ ์๋ ํ์ผ(exe)์ ๊ธฐ๋ณธ์ ์ผ๋ก HDD์ ์ ์ฅ๋๋ค. CPU๋ ์ ์ด์ฅ์น, ์ฐ์ฐ์ฅ์น, ๋ ์ง์คํฐ๋ก ๋๋จ. ์๋๋ CPU๊ฐ ๋ ์ง์คํฐ๋ฅผ ์ฌ์ฉํ๋ ์ด์ โผ ๋ ์ง์คํฐ๊ฐ ๊ฐ์ฅ ๋น ๋ฆ ๋ฉ๋ชจ๋ฆฌ ๊ตฌ์กฐ goodgid.github.io/Memory-Structure/ > ์ด ์ฃผ์์์ ๋งค์ฐ ์์ธํ ์ค๋ช ๋์ด์์ผ๋ ์ฐธ๊ณ ํด์ฃผ์ธ์. ํ๋ก๊ทธ๋จ ๋์๊ณผ์ ์๋..
2020.09.29 -
์ค๋์ ๋ ์ง์คํฐ์ ๋ํ ํฌ์คํ ์ ํด๋ณด๋ ค๊ณ ํด์. ์ด์ ๋ธ๋ฆฌ์ด๋ฅผ ๊ณต๋ถํ๋ค๋ณด๋ฉด ax,ah ๋ฑ ๋ง์ ๋ ์ง์คํฐ๋ค์ด ๋ฑ์ฅ์ ํ๋๋ฐ, ์ ๋ ์ด ๋ ์ง์คํฐ๊ฐ ๋ฌด์์ธ์ง ์ ๋๋ก ์ดํดํ์ง ๋ชปํ๊ณ ์์๊ธฐ๋๋ฌธ์ ์ ๊ฐ ์๋ฒฝํ ์๊ณ ์ ์ด๊ธ์ ํฌ์คํ ํ๊ฒ ๋์์ต๋๋ค. ๊ทธ๋ผ ๋ ์ง์คํฐ๊ฐ ๋ฌด์์ธ์ง ์ ์,์ข ๋ฅ๋ฑ์ ์ ๋๋ก ํ์ ํด๋ด ์๋ค!๐โ๏ธ๐โ๏ธ ๋ ์ง์คํฐ๋? ๋ ์ง์คํฐ(processor register) ๋ ์ปดํจํฐ์ ํ๋ก์ธ์ ๋ด์์ ์๋ฃ๋ฅผ ๋ณด๊ดํ๋ ์์ฃผ ๋น ๋ฅธ ๊ธฐ์ต ์ฅ์์ด๋ค. ์ผ๋ฐ์ ์ผ๋ก ํ์ฌ ๊ณ์ฐ์ ์ํ์ค์ธ ๊ฐ์ ์ ์ฅํ๋ ๋ฐ ์ฌ์ฉ๋๋ค. ๋ ์ง์คํฐ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณ์ธต์ ์ต์์์ ์์นํ๋ฉฐ, ๊ฐ์ฅ ๋น ๋ฅธ ์๋๋ก ์ ๊ทผ ๊ฐ๋ฅํ ๋ฉ๋ชจ๋ฆฌ์ด๋ค. ์ต์ ํ๋ก์ธ์์์ ๋ ์ง์คํฐ๋ ๋๊ฐ ๋ ์ง์คํฐ ํ์ผ๋ก ๊ตฌํ๋์ง๋ง, ๊ณผ๊ฑฐ์๋ ํ๋ฆฝํ๋กญ, ๋ง๊ทธ๋คํฑ ์ฝ์ด, ๋ฐ๋ง ํ๋ฆ ๋ฉ๋ชจ๋ฆฌ ๋ฑ์ผ๋ก..
[์ด์ ๋ธ๋ฆฌ์ด] ๋ ์ง์คํฐ์ค๋์ ๋ ์ง์คํฐ์ ๋ํ ํฌ์คํ ์ ํด๋ณด๋ ค๊ณ ํด์. ์ด์ ๋ธ๋ฆฌ์ด๋ฅผ ๊ณต๋ถํ๋ค๋ณด๋ฉด ax,ah ๋ฑ ๋ง์ ๋ ์ง์คํฐ๋ค์ด ๋ฑ์ฅ์ ํ๋๋ฐ, ์ ๋ ์ด ๋ ์ง์คํฐ๊ฐ ๋ฌด์์ธ์ง ์ ๋๋ก ์ดํดํ์ง ๋ชปํ๊ณ ์์๊ธฐ๋๋ฌธ์ ์ ๊ฐ ์๋ฒฝํ ์๊ณ ์ ์ด๊ธ์ ํฌ์คํ ํ๊ฒ ๋์์ต๋๋ค. ๊ทธ๋ผ ๋ ์ง์คํฐ๊ฐ ๋ฌด์์ธ์ง ์ ์,์ข ๋ฅ๋ฑ์ ์ ๋๋ก ํ์ ํด๋ด ์๋ค!๐โ๏ธ๐โ๏ธ ๋ ์ง์คํฐ๋? ๋ ์ง์คํฐ(processor register) ๋ ์ปดํจํฐ์ ํ๋ก์ธ์ ๋ด์์ ์๋ฃ๋ฅผ ๋ณด๊ดํ๋ ์์ฃผ ๋น ๋ฅธ ๊ธฐ์ต ์ฅ์์ด๋ค. ์ผ๋ฐ์ ์ผ๋ก ํ์ฌ ๊ณ์ฐ์ ์ํ์ค์ธ ๊ฐ์ ์ ์ฅํ๋ ๋ฐ ์ฌ์ฉ๋๋ค. ๋ ์ง์คํฐ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณ์ธต์ ์ต์์์ ์์นํ๋ฉฐ, ๊ฐ์ฅ ๋น ๋ฅธ ์๋๋ก ์ ๊ทผ ๊ฐ๋ฅํ ๋ฉ๋ชจ๋ฆฌ์ด๋ค. ์ต์ ํ๋ก์ธ์์์ ๋ ์ง์คํฐ๋ ๋๊ฐ ๋ ์ง์คํฐ ํ์ผ๋ก ๊ตฌํ๋์ง๋ง, ๊ณผ๊ฑฐ์๋ ํ๋ฆฝํ๋กญ, ๋ง๊ทธ๋คํฑ ์ฝ์ด, ๋ฐ๋ง ํ๋ฆ ๋ฉ๋ชจ๋ฆฌ ๋ฑ์ผ๋ก..
2020.04.20 -
์ค๋์ ์ด์ ๋ธ๋ฆฌ์ด ๊ธฐ์ด ์ด๋ก ๊ณผ ์ค์ต์ ํด๋ณผ๊บผ์์~ ์์ง ๊ฐ ๊ธธ์ด ๋ฉ๊ธฐ๋๋ฌธ์..! ์ง๊ธ ๋ฐ๋ก ์์ํ๊ฒ ์ต๋๋ค. ๐ฑ๐๐จ ์ด์ ๋ธ๋ฆฌ์ด ํ๋ก๊ทธ๋๋ฐ์ ๊ธฐ๋ณธ ์์ 3๊ฐ์ ์์๋ก ๊ตฌ์ฑ๋๋ค. ํ๋ก๊ทธ๋จ์ ๋ช ๋ น์ด๋ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ์ด ๋๋ค. CPU๋ ๋ช ๋ น์ด๋ฅผ 1๊ฐ์ฉ ๊ฐ์ง๊ณ ์์ ๋ช ๋ น์ ํด์ํ๊ณ ์ํํ ํ ๋ ์ง์คํฐ์ ์ ์ฅํ๋ค. ์ฆ ์ด์ ๋ธ๋ฆฌ ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ค๋ ๊ฒ์ CPU๊ฐ ์ง์ํด ์ฃผ๋ ๊ฐ์ข ์ฐ์ฐ ๊ธฐ๋ฅ๋ค์ ์ด์ฉํ์ฌ ๋ ์ง์คํฐ๋ ๋ฉ๋ชจ๋ฆฌ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ , ํ๋ก๊ทธ๋จ์ ํ๋ฆ์ ๋ณ๊ฒฝํ๋ ๋จ์ํ ์์ ๊ณผ์ ์ ๋งํ๋ค. ๋ ์ง์คํฐ ๋ ์ง์คํฐ๋ ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃจ๋ ํฌ๊ธฐ์ ๋ฐ๋ผ ๊ฐ๊ฐ ๋ค๋ฅธ ์ด๋ฆ์ผ๋ก ๋ถ๋ฆฐ๋ค. ex: 'A' ๋ ์ง์คํฐ์ธ ๊ฒฝ์ฐ ๋ ์ง์คํฐ์ ๋จ์๋ ๋ฐ์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ๋ช ์นญํ๋ค. 64bit ๋จ์ : RAX 32bit ๋จ์ : EAX 16bit ๋จ์ :..
[์ด์ ๋ธ๋ฆฌ์ด] ๊ธฐ์ด์ค์ต_๋ณ์, ๋ฐฐ์ด์ค๋์ ์ด์ ๋ธ๋ฆฌ์ด ๊ธฐ์ด ์ด๋ก ๊ณผ ์ค์ต์ ํด๋ณผ๊บผ์์~ ์์ง ๊ฐ ๊ธธ์ด ๋ฉ๊ธฐ๋๋ฌธ์..! ์ง๊ธ ๋ฐ๋ก ์์ํ๊ฒ ์ต๋๋ค. ๐ฑ๐๐จ ์ด์ ๋ธ๋ฆฌ์ด ํ๋ก๊ทธ๋๋ฐ์ ๊ธฐ๋ณธ ์์ 3๊ฐ์ ์์๋ก ๊ตฌ์ฑ๋๋ค. ํ๋ก๊ทธ๋จ์ ๋ช ๋ น์ด๋ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ์ด ๋๋ค. CPU๋ ๋ช ๋ น์ด๋ฅผ 1๊ฐ์ฉ ๊ฐ์ง๊ณ ์์ ๋ช ๋ น์ ํด์ํ๊ณ ์ํํ ํ ๋ ์ง์คํฐ์ ์ ์ฅํ๋ค. ์ฆ ์ด์ ๋ธ๋ฆฌ ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ค๋ ๊ฒ์ CPU๊ฐ ์ง์ํด ์ฃผ๋ ๊ฐ์ข ์ฐ์ฐ ๊ธฐ๋ฅ๋ค์ ์ด์ฉํ์ฌ ๋ ์ง์คํฐ๋ ๋ฉ๋ชจ๋ฆฌ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ , ํ๋ก๊ทธ๋จ์ ํ๋ฆ์ ๋ณ๊ฒฝํ๋ ๋จ์ํ ์์ ๊ณผ์ ์ ๋งํ๋ค. ๋ ์ง์คํฐ ๋ ์ง์คํฐ๋ ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃจ๋ ํฌ๊ธฐ์ ๋ฐ๋ผ ๊ฐ๊ฐ ๋ค๋ฅธ ์ด๋ฆ์ผ๋ก ๋ถ๋ฆฐ๋ค. ex: 'A' ๋ ์ง์คํฐ์ธ ๊ฒฝ์ฐ ๋ ์ง์คํฐ์ ๋จ์๋ ๋ฐ์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ๋ช ์นญํ๋ค. 64bit ๋จ์ : RAX 32bit ๋จ์ : EAX 16bit ๋จ์ :..
2020.04.11 -
์ด๋ฒ์ ๊ธฐ์ด ์ค์ต์ ํด๋ณด๊ณ ๊ทธ ์ฝ๋์ ๋ํด ๋ถ์์ ํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. ๊ธฐ๋ณธ์ ์ธ ๋ช ๋ น์ด์ + , * ์ฌ์ฉ์ ์ฃผ๋ก ๋ค๋ค์ผ๋ ๊ฐ๋ณ๊ฒ ์ฝ์ด๋ด์ฃผ์ธ์!! โ๋จ : ๊ธ์ ์ํ๋ก ๋ฉ๋ชจํ์์ผ๋ ์ ์ํ์ฌ ์ฐธ๊ณ ํ์๊ธธ ๋ฐ๋๋๋ค. 1. [๊ฐ๋จํ ๊ธฐ์ด์ฐ์ฐ] "a+2*b" ์์ ๊ตฌํํ๊ธฐ. ์ฝ๋ ํ์ธ ํ ๋ฉ๋ชจ๋ฅผ ์ฐธ๊ณ ํด์ฃผ์ธ์. 2. [๊ฐ๋จํ ๊ธฐ์ด์ฐ์ฐ] "์๋ฃ ์ฒ๋ฆฌ ๋จ์์ SASM ์์์ ๋จ์" ์์ ์ด์ด์ ์ฝ๋ ํด์ค๋ ์์ผ๋ ์ฐธ๊ณ ํด์ฃผ์ธ์. 3. [๊ฐ๋จํ ๊ธฐ์ด์ฐ์ฐ] "a*b+c*d" ์์ ๊ตฌํํ๊ธฐ ๊ฐ๋จํ ์ฐ์ฐ ์ฝ๋๋ฅผ ์์ฑํด๋ดค์ด์! ์์ผ๋ก ์ ์ ๋ฐ์ ํ๋ฉด์ ๊ฐ์ด ๋ฐฐ์๋ด์ ใ ใ ๊ทธ๋ผ ์ค๋ ์ด์ ๋ธ๋ฆฌ์ด๋ ์๊ธฐ๊น์ง ํ๊ฒ ์ต๋๋ค! ๋ค๋ค ์๊ณ ํ์ จ์ด์~๐ฉ๐ฉ
[์ด์ ๋ธ๋ฆฌ์ด] ๊ธฐ์ด์ฝ๋๋ถ์์ด๋ฒ์ ๊ธฐ์ด ์ค์ต์ ํด๋ณด๊ณ ๊ทธ ์ฝ๋์ ๋ํด ๋ถ์์ ํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. ๊ธฐ๋ณธ์ ์ธ ๋ช ๋ น์ด์ + , * ์ฌ์ฉ์ ์ฃผ๋ก ๋ค๋ค์ผ๋ ๊ฐ๋ณ๊ฒ ์ฝ์ด๋ด์ฃผ์ธ์!! โ๋จ : ๊ธ์ ์ํ๋ก ๋ฉ๋ชจํ์์ผ๋ ์ ์ํ์ฌ ์ฐธ๊ณ ํ์๊ธธ ๋ฐ๋๋๋ค. 1. [๊ฐ๋จํ ๊ธฐ์ด์ฐ์ฐ] "a+2*b" ์์ ๊ตฌํํ๊ธฐ. ์ฝ๋ ํ์ธ ํ ๋ฉ๋ชจ๋ฅผ ์ฐธ๊ณ ํด์ฃผ์ธ์. 2. [๊ฐ๋จํ ๊ธฐ์ด์ฐ์ฐ] "์๋ฃ ์ฒ๋ฆฌ ๋จ์์ SASM ์์์ ๋จ์" ์์ ์ด์ด์ ์ฝ๋ ํด์ค๋ ์์ผ๋ ์ฐธ๊ณ ํด์ฃผ์ธ์. 3. [๊ฐ๋จํ ๊ธฐ์ด์ฐ์ฐ] "a*b+c*d" ์์ ๊ตฌํํ๊ธฐ ๊ฐ๋จํ ์ฐ์ฐ ์ฝ๋๋ฅผ ์์ฑํด๋ดค์ด์! ์์ผ๋ก ์ ์ ๋ฐ์ ํ๋ฉด์ ๊ฐ์ด ๋ฐฐ์๋ด์ ใ ใ ๊ทธ๋ผ ์ค๋ ์ด์ ๋ธ๋ฆฌ์ด๋ ์๊ธฐ๊น์ง ํ๊ฒ ์ต๋๋ค! ๋ค๋ค ์๊ณ ํ์ จ์ด์~๐ฉ๐ฉ
2020.03.31