μš©μ–΄ μ •μ˜

μ•„λž˜μ—μ„œ 각각의 μš©μ–΄μ— λŒ€ν•΄ μ •μ˜ν•œ ν›„, 이듀이 μ„œλ‘œ μ–΄λ–»κ²Œ 관계λ₯Ό λ§Ίκ³  μžˆλŠ”μ§€ μ„€λͺ…ν• κ²Œ.

  1. Assembly Language (μ–΄μ…ˆλΈ”λ¦¬ μ–Έμ–΄)
  2. Binary Code (이진 μ½”λ“œ)
  3. Instruction (λͺ…λ Ήμ–΄)
  4. Operation (μ—°μ‚°)
  5. Compiler (컴파일러)
  6. CPU (Central Processing Unit)

관계 μ„€λͺ…

  1. CompilerλŠ” κ³ μˆ˜μ€€ ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄λ‘œ μž‘μ„±λœ μ†ŒμŠ€ μ½”λ“œλ₯Ό Assembly Languageλ‚˜ Binary Code둜 λ³€ν™˜ν•œλ‹€. 이 λ³€ν™˜λœ μ½”λ“œλŠ” CPUκ°€ 이해할 수 μžˆλŠ” Instruction으둜 κ΅¬μ„±λœλ‹€.
  2. Assembly LanguageλŠ” μ‚¬λžŒ μΉœν™”μ μΈ ν‘œν˜„μ΄μ§€λ§Œ, Binary CodeλŠ” CPUκ°€ μ‹€μ œλ‘œ μ²˜λ¦¬ν•˜λŠ” 데이터이닀.
  3. Instruction은 Assembly Language와 Binary Code λͺ¨λ‘μ—μ„œ μ‚¬μš©λ˜λ©°, CPUκ°€ μˆ˜ν–‰ν•  μž‘μ—…μ„ μ •μ˜ν•œλ‹€. CPUκ°€ Instruction을 가져와 μ‹€ν–‰ν•˜κ²Œ λœλ‹€.
  4. CPUλŠ” Instruction을 Fetch(κ°€μ Έμ˜€κΈ°), Decode(해석), **Execute(μ‹€ν–‰)**의 μˆœμ„œλ‘œ μ²˜λ¦¬ν•œλ‹€. μ΄λ•Œ Instruction이 λͺ…μ‹œν•˜λŠ” Operation(μ—°μ‚°)이 CPUμ—μ„œ μ‹€μ œλ‘œ μ‹€ν–‰λœλ‹€. 예λ₯Ό λ“€μ–΄, ADD λͺ…λ Ήμ–΄λŠ” λ ˆμ§€μŠ€ν„°μ˜ 두 값을 λ”ν•˜λŠ” λ§μ…ˆ Operation을 μˆ˜ν–‰ν•œλ‹€.
  5. Binary Code둜 λ³€ν™˜λœ Instruction은 CPU에 μ˜ν•΄ 직접 ν•΄μ„λ˜μ–΄ Operation이 μ‹€ν–‰λœλ‹€. μ΄λ•Œ, CPUλŠ” λ ˆμ§€μŠ€ν„°, λ©”λͺ¨λ¦¬, μ‚°μˆ  논리 μ—°μ‚° μž₯치(ALU) 등을 μ‚¬μš©ν•΄ 연산을 μˆ˜ν–‰ν•œλ‹€.

μ΄λ“€μ˜ 관계λ₯Ό μš”μ•½ν•˜μžλ©΄: