# RO SoSe26 Probeklausur 소문항별 상세 해설지

공식 `Probeklausur.pdf`와 `Probeklausur Musterlösung und Hinweise.pdf`를 기준으로 8개 Aufgaben을 65개 최소 학습 단위로 분해한 한국어 해설지입니다.

각 unit에는 다음이 들어 있습니다.

- 공식 독일어 문제 페이지 이미지
- 쉬운 한국어 해석과 출제 의도
- 소문항 고유 핵심 용어와 풀이 규칙
- 공식 문제와 다른 작은 worked example
- 공식 정답과 공식 해설 이미지
- 이유·종이 산출물·완료 기준·힌트·대표 오류가 있는 micro-step 풀이
- 공식답과 독립 검산의 비교
- 시험장에서 쓸 최종 답안
- 확인 문제와 출처

## Aufgabe 1 — Theorieaufgaben (15점)

[Aufgabe 1 전용 인덱스](aufgabe-01/index.md)

  - [1a — Werkzeugkette 4개 역할 매칭](aufgabe-01/1a.md)
  - [1b — Eintakt·Mehrtakt·Pipeline 구분](aufgabe-01/1b.md)
  - [1c — Speicherhierarchie 정렬](aufgabe-01/1c.md)
  - [1d — 2차원 Array의 Lokalität](aufgabe-01/1d.md)
  - [1e — Alignment와 misaligned word](aufgabe-01/1e.md)
  - [1f — Signed Immediate의 이유와 비용](aufgabe-01/1f.md)
  - [1g — Operand 값과 ALU 시간](aufgabe-01/1g.md)
  - [1h — Wahr/Falsch 5문장](aufgabe-01/1h.md)
## Aufgabe 2 — Binärcode und Assemblerzuordnung (8점)

[Aufgabe 2 전용 인덱스](aufgabe-02/index.md)

  - [2-0 — 매칭 전체 풀이 루틴](aufgabe-02/2-0.md)
  - [2-1 — `nop` ↔ `0x00000013`](aufgabe-02/2-1.md)
  - [2-2 — `ret` ↔ `0x00008067`](aufgabe-02/2-2.md)
  - [2-3 — `beq s0,s1,12` 매칭](aufgabe-02/2-3.md)
  - [2-4 — `sw a4,8(t0)` 매칭](aufgabe-02/2-4.md)
  - [2-5 — `add t0,a6,t2` 매칭](aufgabe-02/2-5.md)
  - [2-6 — `jal ra,32` 매칭](aufgabe-02/2-6.md)
  - [2-7 — `bne t0,t1,-16` 매칭](aufgabe-02/2-7.md)
  - [2-8 — `sll a2,a4,a5` 매칭](aufgabe-02/2-8.md)
  - [2-9 — 남는 `addi t0,a6,2`](aufgabe-02/2-9.md)
## Aufgabe 3 — C in RISC-V übersetzen (8점)

[Aufgabe 3 전용 인덱스](aufgabe-03/index.md)

  - [3-1 — `swap`: 두 주소 계산](aufgabe-03/3-1.md)
  - [3-2 — `swap`: load 두 번, store 두 번](aufgabe-03/3-2.md)
  - [3-3 — `bubbleSort` Prolog](aufgabe-03/3-3.md)
  - [3-4 — 바깥 loop 조건](aufgabe-03/3-4.md)
  - [3-5 — 안쪽 loop와 비교](aufgabe-03/3-5.md)
  - [3-6 — swap 호출과 Epilog](aufgabe-03/3-6.md)
## Aufgabe 4 — Fehler identifizieren und korrigieren (8점)

[Aufgabe 4 전용 인덱스](aufgabe-04/index.md)

  - [4a — 다섯 ABI 위반 찾기](aufgabe-04/4a.md)
  - [4b — 올바른 magicBox 재작성](aufgabe-04/4b.md)
## Aufgabe 5 — Gemeinsame Pfade im Eintaktprozessor (6점)

[Aufgabe 5 전용 인덱스](aufgabe-05/index.md)

  - [5-1 — 네 instruction 개별 경로 분류](aufgabe-05/5-1.md)
  - [5-2 — 공통 path 교집합](aufgabe-05/5-2.md)
  - [5-3 — Register File 연결 규칙](aufgabe-05/5-3.md)
## Aufgabe 6 — Mehrtaktprozessor (14점)

[Aufgabe 6 전용 인덱스](aufgabe-06/index.md)

  - [6a-1 — Fetch 상태](aufgabe-06/6a-1.md)
  - [6a-2 — MemAdr 상태](aufgabe-06/6a-2.md)
  - [6a-3 — JAL 상태](aufgabe-06/6a-3.md)
  - [6a-4 — BEQ 상태](aufgabe-06/6a-4.md)
  - [6b-1 — Cycle별 delay 계산](aufgabe-06/6b-1.md)
## Aufgabe 7 — Pipelined Prozessor (15점)

[Aufgabe 7 전용 인덱스](aufgabe-07/index.md)

  - [7a-1 — 네 번째 instruction fetch 시점](aufgabe-07/7a-1.md)
  - [7a-2 — 일곱 번째 instruction fetch 시점](aufgabe-07/7a-2.md)
  - [7b — 세 processor의 총 cycle](aufgabe-07/7b.md)
  - [7c-1 — 가짜 dependency 제거: x0](aufgabe-07/7c-1.md)
  - [7c-2 — 첫 실제 hazard: t2→bne](aufgabe-07/7c-2.md)
## Aufgabe 8 — Cache (16점)

[Aufgabe 8 전용 인덱스](aufgabe-08/index.md)

  - [8a-1 — 기존 L1의 AMAT](aufgabe-08/8a-1.md)
  - [8a-2 — 느리지만 잘 맞는 새 L1](aufgabe-08/8a-2.md)
  - [8b-1 — Direct-mapped Zugriff #1](aufgabe-08/8b-1.md)
  - [8b-2 — Direct-mapped Zugriff #2](aufgabe-08/8b-2.md)
  - [8b-3 — Direct-mapped Zugriff #3](aufgabe-08/8b-3.md)
  - [8b-4 — Direct-mapped Zugriff #4](aufgabe-08/8b-4.md)
  - [8b-5 — Direct-mapped Zugriff #5](aufgabe-08/8b-5.md)
  - [8b-6 — Direct-mapped Zugriff #6](aufgabe-08/8b-6.md)
  - [8b-7 — Direct-mapped Zugriff #7](aufgabe-08/8b-7.md)
  - [8b-8 — Direct-mapped Zugriff #8](aufgabe-08/8b-8.md)
  - [8b-9 — Direct-mapped Zugriff #9](aufgabe-08/8b-9.md)
  - [8b-10 — Direct-mapped Zugriff #10](aufgabe-08/8b-10.md)
  - [8b-11 — Direct-mapped Zugriff #11](aufgabe-08/8b-11.md)
  - [8b-12 — Direct-mapped Zugriff #12](aufgabe-08/8b-12.md)
  - [8c-1 — 4-way Cache Zugriff #1](aufgabe-08/8c-1.md)
  - [8c-2 — 4-way Cache Zugriff #2](aufgabe-08/8c-2.md)
  - [8c-3 — 4-way Cache Zugriff #3](aufgabe-08/8c-3.md)
  - [8c-4 — 4-way Cache Zugriff #4](aufgabe-08/8c-4.md)
  - [8c-5 — 4-way Cache Zugriff #5](aufgabe-08/8c-5.md)
  - [8c-6 — 4-way Cache Zugriff #6](aufgabe-08/8c-6.md)
  - [8c-7 — 4-way Cache Zugriff #7](aufgabe-08/8c-7.md)
  - [8c-8 — 4-way Cache Zugriff #8](aufgabe-08/8c-8.md)
  - [8c-9 — 4-way Cache Zugriff #9](aufgabe-08/8c-9.md)
  - [8c-10 — 4-way Cache Zugriff #10](aufgabe-08/8c-10.md)
  - [8c-11 — 4-way Cache Zugriff #11](aufgabe-08/8c-11.md)
  - [8c-12 — 4-way Cache Zugriff #12](aufgabe-08/8c-12.md)
