[μλμ°μ¦ μμ€ν νλ‘κ·Έλλ°] 1. νλ‘κ·Έλ¨μ μ€ν κ³Όμ /νλμ¨μ΄ ꡬμ±μ μ¬μ κ·Ό
μ΄ ν¬μ€νΈλ, μ€μ±μ° μ μλμ 'λλ₯Ό μκ·Ήνλ μλμ°μ¦ μμ€ν νλ‘κ·Έλλ°'μ λ°νμΌλ‘ μ μκ°μ μ¬κ΅¬μ±νμ¬ μ 리ν ν¬μ€νΈμ λλ€.
μ΄μ ν¬μ€νΈ
[μλμ°μ¦ μμ€ν νλ‘κ·Έλλ°] 1. μμ€ν νλ‘κ·Έλλ°, μ»΄ν¨ν° νλμ¨μ΄ ꡬμ±, CPU
μ΄ ν¬μ€νΈλ, μ€μ±μ° μ μλμ 'λλ₯Ό μκ·Ήνλ μλμ°μ¦ μμ€ν νλ‘κ·Έλλ°'μ λ°νμΌλ‘ μ μκ°μ μ¬κ΅¬μ±νμ¬ μ 리ν ν¬μ€νΈμ λλ€. λ€μ ν¬μ€νΈ 2019/06/12 - [Development/System] - [μλμ°μ¦ μμ€ν νλ‘κ·Έλ..
cjwoov.tistory.com
λͺ©μ°¨
- νλ‘κ·Έλ¨ μ€ν κ³Όμ
- Stored Program Concept
- λ°μ΄ν° μ΄λ κΈ°λ°μ λ²μ€ μμ€ν
νλ‘κ·Έλ¨ μ€ν κ³Όμ
- μ μ²λ¦¬κΈ°μ μν μΉνμμ
- #μΌλ‘ μμνλ μ§μμ
- μ»΄νμΌλ¬μ μν λ²μ
- CPUμ λͺ λ Ήμ΄λ‘ λ²μ
- μ΄μ
λΈλ¬μ μν λ°μ΄λ리 μ½λ(0, 1) μμ±
- CPUμ λͺ λ Ήμ΄λ₯Ό λ°μ΄λ리 μ½λλ‘ λ²μ
- λ§μ»€μ μν μ°κ²°κ³Ό κ²°ν©
- λΌμ΄λΈλ¬λ¦¬μ κ²°ν©
μ€μ λ‘ μ€ννμΌμ΄ μμ±λλ κ³Όμ μ κ·Έλ¦Ό 1κ³Ό κ°λ€.
μ΄μ λΈλ¦¬μ΄? μ΄μ λΈλ¬?
CPUλ₯Ό λμμΈνλ€λ κ²μ μμ£Ό ν° μλ―Έλ₯Ό μ§λλ€. CPUλ₯Ό κ°λ°νλ κ°λ°μλ λͺ λ Ήμ΄λ₯Ό λμμΈνλ€.
μ΄ λͺ λ Ήμ΄λ₯Ό μ΄λ»κ² λμμΈνλλμ λ°λΌ CPU ꡬμ±μ λ¬λ¦¬νλ€.
μ»΄ν¨ν°λ μλ€μνΌ 0κ³Ό 1μ΄λΌλ μ«μλ§μΌλ‘ λ°μ΄ν°λ₯Ό μ‘μμ νλλ°,
μμ μ΄ CPU κ°λ°μλΌκ³ μκ°νκ³ μ¬μΉμ°μ°μ 0κ³Ό 1μ΄λΌλ μ«μλ₯Ό μ΄λ»κ² μ μν κΉ λλ¦λλ‘ μκ°ν΄λ³΄μ.
0011μ λ§μ , 0010μ λΊμ , 0100μ κ³±μ , 0101λ λλμ μΌλ‘ CPU λͺ λ Ήμ΄λ₯Ό μ μνμλ€.
νμ§λ§ μ¬λλ€μ΄ 0011, 0010, 0100, 0101μ΄λΌλ μ«μλ§ λμΌλ‘ 보기μ μ΄κ² λ§μ μΈμ§ λλμ μΈμ§ ν·κ°λ¦°λ€.
κ°λ°μλ€μ λκ° μ«μλ€λ‘ κ°λνμ§ μμ μ΄μ... μ λ° μ«μμ μ‘°ν©λ§μΌλ‘ νλ‘κ·Έλλ°μ ν μ μλ€.
κ·Έλμ 0011μ΄λΌλ λ§μ μ μλ―Έλ₯Ό κ°μ§ μ«μμκ² ADDλΌλ λ¬Έμ,..., 0101μ΄λΌλ λλμ μ μλ―Έλ₯Ό κ°μ§ μ«μμκ² DIVλΌλ λ¬Έμλ₯Ό λΆμ¬μ£Όκ³ μ λ° λ¬Έμλ₯Ό κ°μ§κ³ νλ‘κ·Έλλ°μ νλλ°, μ΄κ²μ μ΄μ λΈλ¦¬ νλ‘κ·Έλλ°μ΄λΌκ³ νλ€.
κ·Έλ¬λ©΄ μμΌλ‘ μ°λ¦¬κ° λΆμΈ λ¬Έμλ‘ νλ‘κ·Έλλ°μ νλ€λ©΄,
μ»΄ν¨ν°κ° κ·Έ λ¬Έμλ₯Ό μ΄ν΄νκΈ° μν΄μ μ»΄ν¨ν°κ° μ΄ν΄ν μ μλ μ«μ(0κ³Ό 1μ μ‘°ν©)λ‘ λ€μ λ°κΎΈμ΄μ£Όμ΄μΌ νλλ°
μ΄κ²μ΄ μ΄μ λΈλ¬κ° νλ μΌμ΄λ€.
κ·Έλ λ€λ©΄ μ»΄νμΌλ¬λ?
μμμ ADD, MIN, MUL, DIVλΌλ λ¬Έμ λνμ μ°λ¦¬λ μ«μλ§μΌλ‘ νλ‘κ·Έλλ°μ νμ§ μμλ λλ€.
νμ§λ§ μ¬μ ν ADD, MIN, MUL, DIV μ΄λ¬ν λ¬Έμλ€μ ν΅ν΄ μ λλ‘ λ νλ‘κ·Έλλ°μ νκΈ°μ λ무 μ΄λ ΅λ€.
κ·Έλμ μ§κΈ μ°λ¦¬κ° νν μ΄ν΄νκΈ° μ½κ³ 곡λΆνκΈ° μ’μ μΈμ΄ C, C++, JAVA,... μ κ°μ νλ‘κ·Έλλ° μΈμ΄λ₯Ό μ¬μ©νλ€.
μ°λ¦¬κ° νλ‘κ·Έλλ° μΈμ΄λ₯Ό ν΅ν΄ κ°λ°μ νλ©΄,
μ»΄νμΌλ¬λ μμμ μΈκΈν ADD, MINκ³Ό κ°μ μ΄μ λΈλ¦¬μ΄λ‘ λ³νμμΌμ£Όκ³ μ΄μ λΈλ¬λ μ»΄ν¨ν°κ° μ΄ν΄ν μ μλλ‘ λ°μ΄λ리 μ½λ(0, 1)λ‘ λ³νμμΌμ€λ€κ³ 보면 λλ€.
λ§μ»€?
μ΄μ λΈλ¬λ₯Ό ν΅ν΄ λ§λ€μ΄μ§ λ°μ΄λ리 μ½λμ λΌμ΄λΈλ¬λ¦¬λ₯Ό κ²°ν©ν΄ μ€ννμΌμ λ§λ€μ΄ μ£Όλ μν μ νλ€.
Stored Program Concept
νλ‘κ·Έλ¨μ΄λ κ²μ λ©λͺ¨λ¦¬μ μ μ₯λλ 컨μ μΌλ‘ μ»΄ν¨ν° κ΅¬μ‘°κ° λμμΈλμ΄μΌ νλ€. (= ν° λ Έμ΄λ§ μν€ν μ²)
μ€λλ μ λͺ¨λ μμ€ν μ Stored Program Conceptλ‘ λμμΈλμ΄μλ€.
λ©λͺ¨λ¦¬μ μ μ₯μ΄ μ λλ νλ‘κ·Έλ¨λ μλ..?λΌκ³ μκ°ν μλ μλλ° μμ μλ λ©λͺ¨λ¦¬λΌλ κ°λ μ΄ μμ λ νλ‘κ·Έλ¨μ΄λ κ²μ΄ λ©λͺ¨λ¦¬μ μ μ₯λλ κ΅¬μ‘°κ° μλ λ€κ³ νλ€.
λͺ λ Ήμ΄(νλ‘κ·Έλ¨)λ λ©λͺ¨λ¦¬μ μ μ₯λμ΄μ CPUμ μν΄ Fetch, Decode, Execution λλ€.
- Fetch
- CPU λ΄λΆλ‘ λͺ λ Ήμ΄ μ΄λ(λ²μ€ μΈν°νμ΄μ€λ₯Ό ν΅ν΄μ)
- Decode
- 컨νΈλ‘€ μ λμ μν΄ λͺ λ Ήμ΄ ν΄μ
- Execution
- μ°μ°μ μ§ν
- 보ν΅μ ALUλ₯Ό μκ°
1. μ μ²λ¦¬κΈ°-> μ»΄νμΌλ¬-> μ΄μ λΈλ¬-> λ§μ»€ κ³Όμ μ ν΅ν΄ λ§λ€μ΄μ§ μ€ννμΌμ΄ λ©λͺ¨λ¦¬μ Load λλ€.
2. λ©λͺ¨λ¦¬μ μ μ₯λ λͺ λ Ήμ΄λ CPUμ Fetch λλ€.
3. CPUμ Fetch λ λͺ λ Ήμ΄λ λ§μ μ΄λΌλ μ°μ°μΌλ‘ Decode λλ€.
4. Decode λ μ°μ°μ Execution λλ€.
κ·Έλ¦Ό 4λ₯Ό μ΄μ ν¬μ€νΈλ₯Ό μκ°νλ©΄μ μ΄ν΄ν΄ 보λλ‘ νμ ^^.
λ°μ΄ν° μ΄λμ κΈ°λ° λ²μ€ μμ€ν
λ²μ€λ λ³΄ν΅ μλμ κ°μ΄ 3κ°μ§λ‘ λΆλ₯νλ€.
- λ°μ΄ν° λ²μ€
- λ°μ΄ν° μ΄λ
- μ΄λλ μ€ λ²μ€
- μ£Όμ μ΄λ
- 컨νΈλ‘€ λ²μ€
- 컨νΈλ‘€ μ νΈ μ΄λ
CPUμ λ©λͺ¨λ¦¬ κ΄μ μμλ§ λ²μ€λ₯Ό μ€λͺ ν΄λ³΄μλ©΄,
λ°μ΄ν° λ²μ€(Data Bus)
λ§ κ·Έλλ‘ λ°μ΄ν°λ₯Ό μ λ¬νλ λ²μ€λ€.
μ°λ¦¬κ° λ³΄ν΅ λ²μ€ νλ©΄ 'λ°μ΄ν° μ΄λμ΄λ€'λΌκ³ μ΄κ²μ μκ°νλ€.
μ΄λλ μ€ λ²μ€(Address Bus)
CPUμ μ₯μμ λ©λͺ¨λ¦¬μ νΉμ ν μ£Όμμ μλ λ°μ΄ν°λ₯Ό κ°μ Έκ°κ³ μΆμ λκ° μλ€.
'λͺ λ²μ§μ μλ λ°μ΄ν°λ₯Ό μ€'λΌκ³ μ£Όμλ₯Ό μμ²νκ³ μ λ¬λ°μμΌ νλλ°, μ΄λ΄ λλ μ΄λλ μ€ λ²μ€λ₯Ό μ¬μ©νλ€.
컨νΈλ‘€ λ²μ€(Control Bus)
λ²μ€λΌλ κ²μ μΌλ°μ μΌλ‘ μλ°©ν₯μ΄λ€.
CPUμμ λ©λͺ¨λ¦¬μ λ°μ΄ν°λ₯Ό μ λ¬ν μλ μκ³ , λ°λλ‘ λ©λͺ¨λ¦¬μμ CPUλ‘ λ°μ΄ν°λ₯Ό μ λ¬ ν μ λ μλ€.
κ·Έλ κΈ° λλ¬Έμ 컨νΈλ‘€μ΄ νμνλ€.
μλ₯Ό λ€μ΄, CPUκ° λ©λͺ¨λ¦¬λ‘ 'λ΄κ° μ§κΈ λ°μ΄ν°λ₯Ό λ³΄λΌ κ²μ΄λ€.' νλ©΄ λ©λͺ¨λ¦¬λ μ΄ μκ° CPUμκ² λ°μ΄ν°λ₯Ό μ λ¬νλ©΄ μ λλ€.
μ΄μ κ°μ κ²½μ° μμλ₯Ό 컨νΈλ‘€ν λ 컨νΈλ‘€ λ²μ€λ₯Ό μ¬μ©νλ€.
'Development > System' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
λκΈ
μ΄ κΈ κ³΅μ νκΈ°
-
ꡬλ
νκΈ°
ꡬλ νκΈ°
-
μΉ΄μΉ΄μ€ν‘
μΉ΄μΉ΄μ€ν‘
-
λΌμΈ
λΌμΈ
-
νΈμν°
νΈμν°
-
Facebook
Facebook
-
μΉ΄μΉ΄μ€μ€ν 리
μΉ΄μΉ΄μ€μ€ν 리
-
λ°΄λ
λ°΄λ
-
λ€μ΄λ² λΈλ‘κ·Έ
λ€μ΄λ² λΈλ‘κ·Έ
-
Pocket
Pocket
-
Evernote
Evernote
λ€λ₯Έ κΈ
-
[μλμ°μ¦ μμ€ν νλ‘κ·Έλλ°] 3. WIN32 vs WIN64
[μλμ°μ¦ μμ€ν νλ‘κ·Έλλ°] 3. WIN32 vs WIN64
2019.06.27 -
[μλμ°μ¦ μμ€ν νλ‘κ·Έλλ°] 2. MBCSμ WBCSμ λμ μ§μ
[μλμ°μ¦ μμ€ν νλ‘κ·Έλλ°] 2. MBCSμ WBCSμ λμ μ§μ
2019.06.27 -
[μλμ°μ¦ μμ€ν νλ‘κ·Έλλ°] 2. Windowsμμμ μ λμ½λ(UNICODE)
[μλμ°μ¦ μμ€ν νλ‘κ·Έλλ°] 2. Windowsμμμ μ λμ½λ(UNICODE)
2019.06.27 -
[μλμ°μ¦ μμ€ν νλ‘κ·Έλλ°] 1. μμ€ν νλ‘κ·Έλλ°, μ»΄ν¨ν° νλμ¨μ΄ ꡬμ±, CPU
[μλμ°μ¦ μμ€ν νλ‘κ·Έλλ°] 1. μμ€ν νλ‘κ·Έλλ°, μ»΄ν¨ν° νλμ¨μ΄ ꡬμ±, CPU
2019.05.29