1. ๋ช ๋ น์ด ์งํฉ ๊ตฌ์กฐ(ISA)
๋ช ๋ น์ด ์งํฉ๊ตฌ์กฐ = ์ปดํจํฐ๊ตฌ์กฐ
์ด๋ค ํ๋ก๊ทธ๋จ๊ณผ ๊ทธ ํ๋ก๊ทธ๋จ์ ์ํํ ์ปดํจํฐ ํ๋์จ์ด ์ฌ์ด์ ์ธํฐํ์ด์ค์ ๋ํ ์ ์
๋ช ๋ น์ด๋ ์ปดํจํฐ ํ๋์จ์ด์์ ์ธ์&์คํ๋๋ ๊ธฐ๊ณ์ด
Machine Code, Assembly Code
๋ช ๋ น์ด ์งํฉ ๊ตฌ์กฐ๋ "ํน์ CPU๋ฅผ ์ํด ์ ์๋ ๋ช ๋ น์ด๋ค์ ๋ชจ์"
S/W์ H/W์ฌ์ด์ ISA
Cํ๋ก๊ทธ๋จ์ ๋ณํ๊ณผ์
C program -> Asm program -> Object program ->Executable program
text text binary binary
ADT
data value์ ์งํฉ์ด ์ธก์ Object๋ฅผ ๊ฐ๋ฆฌํค๋ state๊ฐ ๋๋ค.
2. ๋ช ๋ น์ด ํน์ฑ
๋ช ๋ น์ด์ ํน์ฑ: ํํ๋ฅผ ๊ฒฐ์ ํ๋ ์์ธ
CPU๋ ์ฃผ๋ฉ๋ชจ๋ฆฌ์์ ๋ช ๋ น์ด๋ฅผ ๋ฐ์์์ ๊ทธ ๋ช ๋ น์ ์คํํ๋ค.
->๋ค์ํ ๋ช ๋ ์ด๋ฅผ ๊ธฐ๊ณ๋ ์ด๋ป๊ฒ ์ธ์ํ ์ ์์๊น?
->ํํ์ ์์๋ก ๋จผ์ 1์ฐจ์์ ๋ถ๋ฅ
๋ฐ๋ผ์, ๋ช ๋ น์ด ํน์ฑ์ ๋ง๋ ํํ ์ ์๊ฐ ๋จผ์ ํ์ํ๋ค -> ๋ช ๋ น์ด์ ํํ์ ์ํฅ์ ๋ฏธ์น๋ ์์ธ๋ค ๊ณ ๋ ค
๋ช ๋ น์ด์ ํํ์ ์ํฅ์ ๋ฏธ์น๋ ์์ธ๋ค : ๋ด๊ฒจ์ผ ํ ๋ด์ฉ, ๋ช ๋ น์ด์ ํฌ๊ธฐ, ๋ด์ฉ ์ด๋ป๊ฒ ๋ฐฐ์ ํ ์ง?
๋ช ๋ น์ด์ ํน์ฑ: ํผ์ฐ์ฐ์ ์
๋ช ๋ น์ด ๊ธฐ๋ณธ ํ์ : z= f(x,y)
f:๋ช ๋ น์ด(opcode)
x,y,z:ํผ์ฐ์ฐ์(operand)๋ก, ๋ฐ์ดํฐ ์์น(๋ ์ง์คํฐ/๋ฉ๋ชจ๋ฆฌ ์ฃผ์)๋ ๊ฐ ์์ฒด๋ฅผ ํฌํจํ์ฌ, ์ฃผ์ํ๋๋ผ๊ณ ๋ ๋ถ๋ฅธ๋ค.
ํผ์ฐ์ฐ์ ์์ ๋ฐ๋ฅธ ๋ช ๋ น์ด ์ข ๋ฅ
์ข ๋ฅ | ์ | ์๋ฏธ |
ํผ์ฐ์ฐ์๊ฐ ์๋ ๊ฒฝ์ฐ | halt | ํ๋ก๊ทธ๋จ ์ ์ง |
add | ํผ์ฐ์ฐ์๋ stack์ ์ ์ฅ๋์ด, ์์น๋ฅผ ๋ฐ๋ก ๋ช ์์ํจ | |
๋จํญ ํผ์ฐ์ฐ์ | not r1 | r1 ← not(r1) |
add r1 | Acc ← Acc + r1 # Acc๋ ํน์ ๋ ์ง์คํฐ ํ๋๋ acc์์ ๊ฐ์ ธ์ค๊ณ ๋๋จธ์ง ํ๋๊ฐ r1 , ์ด ๋์ ๋ํ์ฌ ๋ฆฌํด |
|
์ดํญ ํผ์ฐ์ฐ์ | add r1, r2 | r1 ← r1 + r2 # r1๋ source์ด์ destination # ์ํ ํ, source data๋ ํ๊ดด๋จ |
์ผํญ ํผ์ฐ์ฐ์ | add r1, r2, r3 | r1 ← r2 + r3 |
๋คํญ ํผ์ฐ์ฐ์ | madd r1, r2, r3, r4 | r1 ← r2 + r3 + r4 # ์ํ ๋ช
๋ น์ด ์๋ ๊ฐ์๋์ง๋ง, # ๋ช ๋ น์ด ์ข ๋ฅ์ ์๋ ์ฆ๊ฐ |
๋ช ๋ น์ด์ ํน์ฑ: ๋ช ๋ ์ด ๊ธธ์ด
๊ณ ์ ๊ธธ์ด ๋ช ๋ น์ด: ๋ช ๋ น์ด ์ข ๋ฅ๋ ๊ตฌ์ฑ์์ ๊ด๊ณ์์ด ๊ธธ์ด ์ผ์
์ฅ์ : ๋ช ๋ น์ด ํด๋ ์ ์ฉ์ด์ฑ์ผ๋ก ํ๋์จ์ด ๋์์ธ์ด ์ฌ์
๋จ์ : ์งง์ ๊ธธ์ด ๋ช ๋ น์ด๋ ๊ธด ๋ช ๋ น์ด์ ๋์ผํ ๊ธธ์ด์ฌ์, ํ๋ก๊ทธ๋จ์ ํฌ๊ธฐ ์ฆ๊ฐ. ๊ฐ๋น์ง ๋ฉ๋ชจ๋ฆฌ ๋ญ๋น
๊ฐ๋ณ๊ธธ์ด ๋ช ๋ น์ด: ๋ช ๋ น์ด ์ข ๋ฅ๋ ๊ตฌ์ฑ์์์ ๋ฐ๋ผ ๋ค์ํ ๊ธธ์ด
์ฅ์ : ๊ธธ์ด ์ต์ ํ๋ก ํ๋ก๊ทธ๋จ ํฌ๊ธฐ๊ฐ ๊ฐ์
๋จ์ : ํ๋ก์ธ์ ํ๋์จ์ด ๋์์ธ์ด ์ด๋ ค์. CPU๊ฐ ํ๋ค๋ค (๊ธธ์ด๊ฐ ๋ค ๋ค๋ฅด๊ธฐ ๋๋ฌธ)
[๋น์ ] ๋์ผํ ํฌ๊ธฐ ํ๋ฐฐ vs ๋ด์ฉ๋ฌผ์ ๋ฑ ๋ง๋ ํฌ๊ธฐ ํ๋ฐฐ
๋์ผ ํฌ๊ธฐ๋ ๋ชจ์์ด ์ผ์ ํ์ง๋ง ๊ณต๊ฐ ๋ญ๋น
๋ช ๋ น์ด์ ํน์ฑ: ๊ฐ ํ๋ ๊ธธ์ด
์ฐ์ฐ ์ฝ๋ ํ๋ ๊ธธ์ด: ์ฐ์ฐ์ ๊ฐ์๋ฅผ ๊ฒฐ์
ํ๋๊ฐ ๊ธธ๋ฉด ์ฌ๋ฌ ์ฐ์ฐ ํ ์ ์์. ex) 4bit ->2^4 = 16๊ฐ์ ์ฐ์ฐ ์ ์ ๊ฐ๋ฅ
์ฐ์ฐ์ฝ๋๋ฅผ 5bit๋ก ๋๋ฆฌ๋ฉด 32๊ฐ์ ์ฐ์ฐ ์ ์ ๊ฐ๋ฅํ๋, ๋ค๋ฅธ ํ๋ ๊ธธ์ด ๊ฐ์
์คํผ๋๋ ํ๋๊ธธ์ด: ์คํผ๋๋์ ๋ฒ์ ๊ฒฐ์
์คํผ๋๋ ์ข ๋ฅ์ ๋ฐ๋ผ ๋ฒ์๊ฐ ๋ฌ๋ผ์ง
- ๋ฐ์ดํฐ:ํํ ๊ฐ๋ฅํ ์์ ๋ฒ์ ๊ฒฐ์
- ๊ธฐ์ต์ฅ์น ์ฃผ์: ๋ฉ๋ชจ๋ฆฌ entry(๋ฐฉ) ๊ฐ์ ๊ฒฐ์
- ๋ ์ง์คํฐ ๋ฒํธ: ๋ ์ง์คํฐ์ ๊ฐ์ ๊ฒฐ์
-> ์ 3๊ฐ๋ฅผ ๋ฐ์ง ์ ์์ด์ผ ์ต์ ํ๋ฅผ ์ ํ ์ ์๋ค.
์ฐ์ฐ ๋ถํธ ๋นํธ๋ 8bit, ๋ฉ๋ชจ๋ฆฌ์ฃผ์ ๋นํธ๋ 16bit, ๋ฐ์ดํฐ๋นํธ๋ 32bit๋ผ๋ฉด
์ ์ ๊ฐ๋ฅํ ์ฐ์ฐ์ ๊ฐฏ์๋?
ํํ ๊ฐ๋ฅํ ์์ ๊ฐฏ์๋?
๋ช ๋ น์ด ๊ธธ์ด๋?
๋ฉ๋ชจ๋ฆฌ ์ฉ๋์?
3. ๋ช ๋ น์ด ์งํฉ ์ค๊ณ์ ๊ณ ๋ ค์ฌํญ
โํ๋์จ์ด ๊ธฐ์ ์ด๋ ์ปดํจํฐ ๊ตฌ์ฑ, ํ๋ก๊ทธ๋๋ฐ ์ธ์ด, ์ปดํ์ผ๋ฌ ๊ธฐ์ , ์ด์์ฒด์ ๋ฑ ๋ค ๊ณ ๋ คํด์ผ ํ๋ค.
โ๋ช ๋ น์ด ํ์(์ฐ์ฐ์ฝ๋, ํผ์ฐ์ฐ์ ์์ ๊ธธ์ด)
โ์ฐ์ฐ์ ์ข ๋ฅ(์ ์ก, ์ฒ๋ฆฌ, ์ ์ด, ์ ์ถ๋ ฅ ์ฐ์ฐ)
โํผ์ฐ์ฐ์ ํ์(ํผ์ฐ์ฐ์ ๋ฐ์ดํฐ ์ ๋ณด, ํํ, ์ ์ฅ ๋ฐฉ์)
โํผ์ฐ์ฐ์๋ฅผ ์ํ ์ฃผ์์ง์ ๋ฐฉ์(ํผ์ฐ์ฐ์๊ฐ ๋ ์ง์คํฐ, ๋ฉ๋ชจ๋ฆฌ ๋ฑ ๋ค์ํ ์์น์ ์์ด ์ฃผ์ ์ ๋ณด ๋ช ์ ํ์)
4. CPU๊ฐ ์ํํ๋ ์ผ
CPU๋ฅผ ์ํ ๋ช ๋ น์ด ->CPU๊ฐ ๋ช ๋ น์ด๋ฅผ ์ฒ๋ฆฌํ ๋ ์ด๋ค ๋ฉ์ปค๋์ฆ์ผ๋ก ํ๋์ง์ ๋ํด ์์๋ณผ ๊ฒ
๋๋ต์ ์ผ๋ก ์ํํ๋์ผ: CPU๋ ์ฃผ ๋ฉ๋ชจ๋ฆฌ์์ ๋ช ๋ น์ด๋ฅผ ํ๋ ๊ฐ์ ธ์์ ์ฒ๋ฆฌํ๊ณ , ๋ ๊ฐ์ ธ์์ ํ๋์ฉ ์ฒ๋ฆฌํจ.
โ๋ช ๋ น์ด ์ธ์ถ๊ณผ ํด๋ (Instruction Fetch&Decode)
๊ธฐ์ต์ฅ์น๋ก๋ถํฐ ๋ช ๋ น์ด๋ฅผ ์ฝ์ด์ค๊ณ , ๊ทธ ๋ช ๋ น์ด๋ฅผ ํด๋
๋ช ๋ น์ด๊ฐ ๋ดํฌ์ ๋ด๊ฒจ์ ธ์จ๋ค๊ณ ์๊ฐํ๋ฉด, ๋ดํฌ๋ฅผ ๋ค ์ด๊ธฐ ์ ์ ์ ์ ์์
๋ชจ๋ ๋ช ๋ น์ด์ ๋ํด ๊ณตํต์ ์ผ๋ก ์ํ
๋ช ๋ น์ด ์ข ๋ฅ์ ๋ฐ๋ผ ์๋ 3๊ฐ์ง๋ก ๊ตฌ๋ถ๋๋ค.
โ๋ฐ์ดํฐ ์ธ์ถ -> ๊ธฐ์ต์ฅ์น๋ I/O์ฅ์น์์ CPU๋ก ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด์จ๋ค.
โ๋ฐ์ดํฐ ์ฒ๋ฆฌ -> ์ฐ์ ์ ํน์ ๋ ผ๋ฆฌ์ ์ฐ์ฐ ์ํ
โ๋ฐ์ดํฐ ์ ์ฅ -> ์ํํ ๊ฒฐ๊ณผ๋ฅผ ์ ์ฅ
->์ธ์ถ/์ฒ๋ฆฌ/์ ์ฅ ๋ฑ์ ๋ช ๋ น์ด ์ข ๋ฅ์ ๋ฐ๋ผ ์ ํ์ ์ผ๋ก ์ํ๋๋ค.
5. CPU์ ๊ธฐ๋ณธ ๊ตฌ์ฑ(ALU,๋ ์ง์คํฐ,์ ์ด์ฅ์น)
PC,IR,ACC.. ๋ฑ ๊ผญ ์ ์ด์ฅ์น ์์ด๋ค ๋ผ๊ณ ์๊ฐํ์ง๋ง์. ์ฐ๊ด๋์ด์๋ ๊ฒ๋ผ๋ฆฌ ํํ์ ์ ๋ ๊ฒ ํด๋์๊ฒ์ด๋ค.
โALU: ๊ฐ์ข ์ฐ์ /๋ ผ๋ฆฌ์ฐ์ฐ์ ์ํํ๋ ํ๋ก๋ค๋ก ์ด๋ฃจ์ด์ง HW ๋ชจ๋
->์ฐ์ , ๋ ผ๋ฆฌ ์ฐ์ฐ์ ํ๋ค.
โ๋ ์ง์คํฐ: CPU์์ ์์ธ์ค ์๋๊ฐ ๊ฐ์ฅ ๋น ๋ฅธ ๊ธฐ์ต์ฅ์น
->๋ค๋ฅธ ์ฃผ๊ธฐ์ต์ฅ์น, ๋ณด์กฐ๊ธฐ์ต์ฅ์น๋ณด๋ค ๋น ๋ฅด๋ค.
->CPU๋ด๋ถ์ ๋ ์ ์๋ ๋ ์ง์คํฐ์ ์๋ ์ ํ์ ์ด๋ค.
๋ ์ง์คํฐ ์ญํ ์ ๋ฐ๋ฅธ ๋ถ๋ฅ
ํ๋ก๊ทธ๋จ ์ ์ด๊ตฌ์กฐ 3๊ฐ์ง->์์ฐจ,์ ํ,๋ฐ๋ณต
Program Counter(PC):๋ค์ ๋ช ๋ น์ด์ ์ฃผ์ ๋ณด๊ด
->๊ฐ ๋ช ๋ น์ด๊ฐ ์ธ์ถ๋ ํ์๋ ์๋์ผ๋ก ์ผ์ ํฌ๊ธฐ๋งํผ ์ฆ๊ฐ
->๋ถ๊ธฐ ๋ช ๋ น์ด๊ฐ ์คํ๋๋ ๊ฒฝ์ฐ์๋ ๋ชฉ์ ์ง ์ฃผ์๋ก ๊ฐฑ์
Instruction R(IR):๊ฐ์ฅ ์ต๊ทผ ๊ฐ์ ธ์จ ๋ช ๋ น์ด ๋ณด๊ด
ACCumlator(ACC): ๋ฐ์ดํฐ์ ์ผ์์ ๋ณด๊ด
Memory Address R(MAR): ๊ธฐ์ต์ฅ์น์ ์๋ ๋ฐ์ดํฐ์ ์ฃผ์๊ฐ์ ์์์ ์ผ๋ก ์ ์ฅํ๋ ์ฃผ์ ๋ ์ง์คํฐ, CPU๊ฐ ์ ๊ทผํ๋ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์ ๋ณด๊ด
Memory Buffer R(MBR): CPU๊ฐ ๋ฉ๋ชจ๋ฆฌ์์ ์ฝ๊ฑฐ๋ ์ ์ฅํ ๋ฐ์ดํฐ ์์ฒด๋ฅผ ๋ณด๊ด, "์์์ ์ฅ์" ๋ผ๊ณ ์๊ฐํ์
โ์ ์ด์ฅ์น:๋ช ๋ น์ด๋ฅผ ํด์ํ๊ณ ,์ด๋ฅผ ์คํํ๊ธฐ ์ํ ์ ์ด์ ํธ๋ฅผ ์์ฐจ์ ์ผ๋ก ๋ฐ์ํ๋ HW
โCPU๋ด๋ถ๋ฒ์ค: ALU์ ๋ ์ง์คํฐ๊ฐ ์ด๋ํ๋ ๋ฐ์ดํฐ์ ์ ์ด์ฅ์น๋ก๋ถํฐ ๋ฐ์๋๋ ์ ์ด ์ ํธ๋ฅผ ์ด๋
๋ ์ง์คํฐ ํฌ๊ธฐ = CPU๊ฐ ํ๋ฒ์ ์ฒ๋ฆฌํ ์ ์๋ ๋ฐ์ดํฐ ๋นํธ ์ = word
ex)64bit: ๋ ์ง์คํฐ ํฌ๊ธฐ๊ฐ 64bit์ด๊ณ , ํ๋ฒ์ ์ฒ๋ฆฌํ ์ ์๋ ๋ฐ์ดํธ ๋นํธ ์๋ 64bit
6. ๋ฐ์ดํฐ ์ ์ฌ/์ ์ฅ ๋ช ๋ น์ด ์คํ๊ณผ์
โ์ ์ฌ(load): CPU๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ์๋ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด์จ๋ค.
->ํ๋ก์ธ์๋ ๋ฐ์ดํฐ๊ฐ ์๋ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ MAR์ ๋ณด๋ธ๋ค.
->MAR์ด ์ง์ ํ๋ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์์ ์๋ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด์ MBR์ ์ ์ฅํ๋ค.
โ์ ์ฅ(store): CPU๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋กํ๋ค.
->ํ๋ก์ธ์๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ MAR์ ๋ณด๋ธ๋ค.
->ํ๋ก์ธ์๋ ๋ฐ์ดํฐ๋ฅผ MBR์ ์ ์ฅํ๋ค.
->๋ฉ๋ชจ๋ฆฌ๋ MAR์ด ์ ์ฅํ๋ ์์น์ MBR์ ๋ด์ฉ์ ์ ์ฅํ๋ค.
โ๋ช ๋ น์ด ์ฌ์ดํด(instruction cycle): ๋ช ๋ น์ด๋ฅผ ์ํํ๋ ์ผ๋ จ์ ๊ณผ์
->์ปดํจํฐ๋ง๋ค ๋ช ๋ น์ด ์คํ๊ณผ์ ์ด ๋ค๋ฅด์ง๋ง, ์ผ๋ฐ์ ์ผ๋ก ๊ฑฐ์น๋ ์ต์ ๊ณผ์ ์ ํฌํจํ๋ค.
CPU์ ๊ธฐ์ต์ฅ์น๊ฐ ์ ์
์ฃผ์ ๋ฒ์ค, ๋ฐ์ดํฐ๋ฒ์ค, ์ ์ด ์ ํธ: ๊ธฐ์ต์ฅ์น ์ฝ๊ธฐ ์ ํธ, ๊ธฐ์ต์ฅ์น ์ฐ๊ธฐ ์ ํธ
์ฃผ์๋ฒ์ค๋ ๋จ๋ฐฉํฅ, ๋ฐ์ดํฐ๋ฒ์ค๋ ์๋ฐฉํฅ
7. ๋ช ๋ น์ด ์ฌ์ดํด
CPU๊ฐ ํ๊ฐ์ ๋ช ๋ น์ด๋ฅผ ์คํํ๋ ๋ฐ ํ์ํ ์ ์ฒด ์ฒ๋ฆฌ ๊ณผ์
->CPU๊ฐ ํ๋ก๊ทธ๋จ ์คํ์ ์์ํ๋ ์๊ฐ๋ถํฐ ์ ์์ ๋๊ฑฐ๋ ํ๋ณต ๋ถ๊ฐ๋ฅํ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ฌ ์ค๋จ๋ ๋๊น์ง ๋ฐ๋ณต
->2๊ฐ์ ๋ถ์ฌ์ดํด๋ก ๋ถ๋ฆฌ
โ์ธ์ถ ์ฌ์ดํด(fetch cycle)
->CPU๊ฐ ๊ธฐ์ต์ฅ์น๋ก๋ถํฐ ๋ช ๋ น์ด๋ฅผ ์ฝ์ด์ค๋ ๋จ๊ณ
t0: MAR<-pc : ํ์ฌ PC๊ฐ ๊ฐ๋ฆฌํค๋ ๋ด์ฉ(๋ฉ๋ชจ๋ฆฌ ์ฃผ์)๋ฅผ MAR๋ก ์ ์ก
t1: MBR <- M[MAR], PC <- PC+1 : ๋ฉ๋ชจ๋ฆฌ๋ MAR์ด ์ง์ํ๋ ๋ฉ๋ชจ๋ฆฌ์ ๋ด์ฉ์ธ ๋ช ๋ น์ด๋ฅผ MBR๋ก ๋ณด๋ด๊ณ , PC๊ฐ ๋ค์ ๋ช ๋ น์ด๋ฅผ
๊ฐ๋ฆฌํค๋๋ก PC์ ๋ด์ฉ์ ๊ฐฑ์ ํ๋ค.
->PC๊ฐ ์ด๋ฏธ MAR๋ก ๋๊ฒผ๊ธฐ ๋๋ฌธ์, 1์ ๋ํจ์ผ๋ก ๋ค์ ๋ช ๋ น์ด๋ฅผ ๊ฐ๋ฆฌํฌ ์ ์๋๋ก ํ๋ค.
t2: IR <- MBR : MBR์ ์๋ ๋ช ๋ น์ด๋ฅผ IR์ ์ ์ฅ. MBR๊ณผ IR๋ ๋ฉ๋ชจ๋ฆฌ๊ฐ ํต์ ? Buffer ์ญํ ์ ํ๋ค.
์ ๋ฐ์ดํฐ ๊ฐ์ด๋, ์ฃผ์ ์ ์ฅ ๊ณต๊ฐ์ด 2๊ฐ์ฉ ์๋๊ฒ์ธ๊ฐ?
โ์คํ ์ฌ์ดํด(execution cycle)
->๋ช ๋ น์ด๋ฅผ ํด๋ ํ๊ณ ์คํํ๋ ๋จ๊ณ
->์ธ์ถ ์ฌ์ดํด๋๋ณด๋ค ์์ ๋์ด ๋ ๋ง๊ธฐ ๋๋ฌธ์, ์ค๋๋ ์ปดํจํฐ๋ ์คํ ์ฌ์ดํด์ ๋ค์์ ๋จ๊ณ๋ก ๋ถํ
- ์ ์ก ์ฐ์ฐ: CPU๋ด ๋ ์ง์คํฐ์ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ด์ ๋ฐ์ดํฐ๋ฅผ ๊ตํ ex)์ ์ฌ(load), ์ ์ฅ(store)
- ์ฒ๋ฆฌ ์ฐ์ฐ: ์ฐ์ ๋ ผ๋ฆฌ์ฐ์ฐ์ฅ์น๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์กฐ์ ex)์ฐ์ ์ฐ์ฐ, ๋ ผ๋ฆฌ์ฐ์ฐ
- ์ ์ด ์ฐ์ฐ: ํ๋ก๊ทธ๋จ์ ์คํ ์์๋ฅผ ์ ์ด ex)์์ฐจ, ๋ฌด์กฐ๊ฑด ๋ถ๊ธฐ, ์กฐ๊ฑด ๋ถ๊ธฐ
- ์ ์ถ๋ ฅ ์ฐ์ฐ: CPU๋ด ๋ ์ง์คํฐ์ I/O ์ฅ์น ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ์ด๋
์ ๋ฆฌ
๋ช ๋ น์ด ์งํฉ๊ตฌ์กฐ
์ด๋ค ํ๋ก๊ทธ๋จ๊ณผ ์ํํ ์ปดํจํฐ ํ๋์จ์ด ์ฌ์ด์ ์ธํฐํ์ด์ค์ ๋ํ ์ ์
๋ช ๋ น์ด๋ ํ๋์จ์ด์์ ์ธ์๋๊ฑฐ๋ ์คํ๋๋ ๊ธฐ๊ณ๋ น์ด
๋ช ๋ น์ด ์งํฉ ๋์์ธ ๊ณ ๋ ค์ฌํญ: ๋ช ๋ น์ด ํ์
๊ธฐ๋ฅ๊ณผ ํ์ํ ์ฌํญ ๊ณ ๋ ค
opcdoe ์ข ๋ฅ ๊ณ ๋ ค -> opcode bit ์, ํผ์ฐ์ฐ์ ๊ฐ์ ๋ฑ
Opcde ์คํ์ ์ํ ํ์ํ ํผ์ฐ์ฐ์ ๊ด๋ จ ๊ณ ๋ ค -> ํผ์ฐ์ฐ์์ ํํ๋ฐฉ๋ฒ, ๋ฐ์ดํฐ ํํ์ ์ํ ์ฃผ์์ง์ ๋ฐฉ์, bit์ ->๋ฉ๋ชจ๋ฆฌ/ ๋ฒ์ค ํฌ๊ธฐ ๋ฑ hw ๊ตฌ์ฑ์์ ์ํฅ
'๐ปโโ๏ธ์ ๊ณต๊ณต๋ถ > ์ปดํจํฐ๊ตฌ์กฐ๋ก ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ช ๋ น์ด ์งํฉ 2/2 (0) | 2023.09.22 |
---|---|
์ปดํจํฐ์ ์ฑ๋ฅ (0) | 2023.09.09 |
์ปดํจํฐ๊ตฌ์กฐ (0) | 2023.08.31 |
์ปดํจํฐ๊ตฌ์กฐ ๋ง๋ณด๊ธฐ (0) | 2023.08.30 |