\documentclass{bschlangaul-aufgabe}
\bLadePakete{java,mathe}
\begin{document}
\bAufgabenMetadaten{
  Titel = {Euklidscher Algorithmus},
  Thematik = {Euklidscher Algorithmus},
  Referenz = TECH.Mehr-Adress.08-Euklid,
  RelativerPfad = Module/50_TECH/20_Mehr-Adress/Aufgabe_08-Euklid.tex,
  BearbeitungsStand = mit Lösung,
  Korrektheit = unbekannt,
  Ueberprueft = {unbekannt},
  Stichwoerter = {Mehr-Adress-Befehl-Assembler},
}

Nach Euklid lässt sich der größte gemeinsamer Teiler zweier Zahlen a$ und
$b$ bestimmen mit:
$
\begin{quote}
\itshape
Wenn CD aber AB nicht misst, und man nimmt bei AB, CD abwechselnd immer
das kleinere vom größeren weg, dann muss (schließlich) eine Zahl übrig
bleiben, die die vorangehende misst.
\end{quote}

\noindent
Erstelle ein Assemblerprogramm, das seine beiden Parameter über zwei
Variablen $a$ und $b$ aus dem Speicher übernimmt und
den $\text{ggt}(a, b)$ berechnet. Das Ergebnis soll in $R0$ liegen.
\index{Mehr-Adress-Befehl-Assembler}

\begin{bAntwort}
\bAssemblerDatei{Aufgabe_08-Euklid.mi}

\bJavaDatei[firstline=3]{aufgaben/tech_info/assembler/mehr_adress/Euklid}
\end{bAntwort}
\end{document}
