Theoretische und technische Informatik - ganz praktisch
Herzlich willkommen auf der Question/Answer-Plattform zu Grundlagen der Informatik II. Wir wünschen Ihnen viel Spaß beim Lernen und Diskutieren!
Loggen Sie sich mit Ihrem KIT-Account (u...) ein, um loszulegen!
Beachten Sie auch diese Informationen zum Schnelleinstieg.
(Nicht-KIT-Studierende beachten bitte diese Informationen.)

Beliebteste Tags

verständnis alternativlösung klausur kellerautomat endlicher-automat grammatik regulärer-ausdruck pumpinglemma turingmaschine tipp zahlendarstellung cmos klausurrelevant bonusklausur komplexität schaltwerk binary-decision-diagram deterministisch assembler schaltnetz minimierung sprachen nichtdeterministisch huffman chomsky-normalform fehler-in-aufgabe anwesenheitsübung rechtslinear heimübung flip-flop cocke-younger-kasami-algorithmus kontextsensitive-grammatik kontextfreie-grammatik fehlererkennbarkeit huffman-kodierung hauptklausur vorlesungsfolien kontextfreie-sprache polynomialzeitreduktion faq gleitkommazahl fehlerkorrigierbarkeit rechtslineare-grammatik dateiorganisation cache darstellung-klausur nachklausur xwizard adressierungsarten lambda mealy endliche-automaten konjunktive-normalform pipelining zustände saalübung leeres-wort ohne-lösungen betriebssystem speicherorganisation moore monotone-grammatik 2-komplement fehler reguläre-sprache hammingzahl monoton lösungsweg pumping-lemma-für-kontextfreie-sprachen kodierung berechenbarkeit pumping-lemma klausureinsicht disjunktive-normalform info-ii bussysteme rechnerarchitektur abzählbarkeit komplexitätsklassen ableitungsbaum vorlesungsaufzeichnung round-robin entscheidbarkeit minimierung-endlicher-automaten chomsky-klassen von-neumann-rechner binärzahl entscheidbar programmiersprachen aufzählbarkeit stern-symbol automaten schaltnetze-und-schaltwerke nukit-fragen bewertung zugriffsarten umformung adressierung mengen binär-subtrahieren

Kategorien

2 Pluspunkte 0 Minuspunkte
274 Aufrufe
Hallo,

wie komme ich darauf, dass in der a) die Lösung n^2 ist  und in b) x^2 für 1...8 ? Darüber hinaus wollte ich fragen, ob es denn "Tricks oder Tipps" gibt, die Funktion bzw. eine solche Ausgabe mit n ablesen zu können, denn bei Eingaben mit Zahlen für Variablen, ist das ganze relativ einfach. Ich komme mit den "n " nicht klar.

Danke!
in 2015-H-10 von uodjt uodjt Eins-Komma-Null-Anwärter(in) (3.7k Punkte)  

1 Eine Antwort

3 Pluspunkte 0 Minuspunkte
 
Beste Antwort
Hallo,

ganz allgemein gibt es hier nur ein paar Hilfsmittel, die ich die empfehlen kann. Erstens würde ich deinen Ansatz mit konkreten Zahlen ruhig weiter verfolgen, am besten erstellst du dir dazu eine Tabelle, in der die jeweils aktuellen Werte der Speicherstellen bzw. Register eingetragen werden. Nach zwei bis drei verschiedenen Beispielen bekommt man doch zumeist einen guten Eindruck, was das Programm berechnet (siehe auch die Tut-Aufgaben dazu).

Einfacher Grundsatz (auch hier mal wieder): Üben, dann kommt das Gefühl dafür!

Zur Aufgabe:

Für die a) ist ja insbesondere der Teil der "innerloop" interessant, dank der Kommentare nebendran wird recht schnell klar, dass hier die Zahl (n) so oft aufaddiert wird, bis der Zähler R1 bei 0 steht. Da R1 zu Beginn ebenfalls n ist, sind das n Durchläufe, also n+n+n+n+... (n-mal) -> n^2.

Bei der b) wird dann erst wirklich die indirekte Adressierung benötigt. Am Ende der "innerloop" (JUMPZERO) kommen wir zu "store". Dort wird in der ersten Zeile der Wert in R3 (unser aktuelles Ergebnis n^2) indirekt in R2 gespeichert, also in das Hauptspeicherfeld, dessen Adresse in R2 enthalten ist. Da R2 = n ist, wird unser Ergebnis n^2 an die Hauptspeicherstelle n gespeichert. Danach wird dann R8 von n auf n-1 verringert und die "outerloop" startet mit diesem Wert von vorn.

Soweit zu diesem Programm, allgemein einfach ein paar Mal üben, die Funktionen abzulesen (Tipp: Es kommt wohl kaum sowas wie 3x^2+7x+5 raus, die Funktionen sind eher schmal gehalten ;) ).

Viele Grüße

Max (Tutor)
von udebm udebm Tutor(in) (105k Punkte)  
ausgewählt von uodjt uodjt
Vorgehen
...