FB18 - Das Forum für Informatik

fb18.de / Diplom Informatik / Unterbereich Grundstudium / Technische Informatik

T3 - Aufgabenblatt 12

T3 - Aufgabenblatt 12 2003-01-26 18:07
Anonymer User
Hola,

ich habe ein Problem mit der neuen tollen Aufgabe. Und zwar weiss ich nicht genau in welchen Registern die Uebergabeparameter (typ ist float) der Main Methode stehen. Liege ich falsch in der Annahme das es sich dabei um das Register %o0 handelt?

schon mal vielen Dank im Vorraus

Christian

Edit: Und auch hier wieder: Mit T3, bzw. das entsprechende Fach mit Zyklusnummer in der Überschrift angeben.

Re: T3 - Aufgabenblatt 12 2003-01-26 18:55
TriPhoenix
Ich kenn zwar die Aufgabe noch nicht, aber wenn es ein float ist, liegts ganz bestimmt nicht in %o0, denn da passen nur 32-bit-Integer rein.
Ein Float-Ergebnis landet in %f0, ein double in %f0, %f1. (s.a. Das kleine Sparc-Heft Seite 49ff)

Re: T3 - Aufgabenblatt 12 2003-01-26 19:39
Fred
Und zwar weiss ich nicht genau in welchen Registern die Uebergabeparameter (typ ist float) der Main Methode stehen.
Float ist kein Typ (glaub ich). Single ist einer, Double ist einer. Und wir sollen double benutzen.

Liege ich falsch in der Annahme das es sich dabei um das Register %o0 handelt?
Wenn Du kein save ausfuehrst, liegt der double Parameter in %o0 (hi) und %o1 (lo). Ansonsten natuerlich in %i0 und %i1. Die Werte musst Du in den Speicher kopieren und von dort aus dann in die FP Register (einen direkten Transferbefehl Integer Register -> FP Register gibt es leider nicht).

Der Rueckgabewert wird in %f0 / %f1 erwartet, unabhaengig davon ob Du ein save benutzt oder nicht (die FP Register sind ja auch unabhaengig vom verwendeten Fenster, also quasi global).

Ach ja noch ein Tip: achte auf das fett geschriebene Wort auf dem Aufgabenzettel [img]http://www.fb18.de/gfx/25.gif[/img]


Re: T3 - Aufgabenblatt 12 2003-01-26 19:40
Fred
Ich kenn zwar die Aufgabe noch nicht, aber wenn es ein float ist, liegts ganz bestimmt nicht in %o0, denn da passen nur 32-bit-Integer rein.
Was ist ein float? Gibts das wirklich?


Re: T3 - Aufgabenblatt 12 2003-01-26 19:44
Anonymer User
naja in c schon…ich habe es benutzt…float ist eine flieskommazahl…

christian

Re: T3 - Aufgabenblatt 12 2003-01-26 19:53
Fred
naja in c schon…ich habe es benutzt…float ist eine flieskommazahl…

christian
dann ist das wohl das gleiche wie ein single?


Re: T3 - Aufgabenblatt 12 2003-01-28 16:38
Anonymer User
Ich kenn zwar die Aufgabe noch nicht, aber wenn es ein float ist, liegts ganz bestimmt nicht in %o0, denn da passen nur 32-bit-Integer rein.
Ein Float-Ergebnis landet in %f0, ein double in %f0, %f1. (s.a. Das kleine Sparc-Heft Seite 49ff)

Das ist die Seite 59


Re: T3 - Aufgabenblatt 12 2003-01-28 17:24
Anonymer User
eine frage:
bei mir funktioniert der Aufruf von C-Funktion pow(doublezahl, 1.0/3.0);
was soll ich da beachten?
ich habe #include <math.h> gemacht, aber noch immmer fehlermeldung "undefined .. symbol", liegt das wo anders?

Re: T3 - Aufgabenblatt 12 2003-01-28 17:49
Slater
interessant dass das nicht geht, hab hier ne seite gefunden:

http://www.cs.bu.edu/help/unix/compiling_with_the_math_library.html

statt 'cc datei.c' soll man demnach 'cc datei.c -lm' eingeben..


Re: T3 - Aufgabenblatt 12 2003-01-28 17:52
Cyrax
Und hat das "-lm" was gebracht? Würde mich ja mal interessieren…..

Re: T3 - Aufgabenblatt 12 2003-01-28 17:54
Slater
na ich würds ja nicht schreiben ohne vorher zu testen,
ja geht auch mit cc

zumindest ist die symbol reference in ordnung, ergebnisse hab ich nicht geschaut ;)

Re: T3 - Aufgabenblatt 12 2003-01-28 18:23
TriPhoenix
Und hat das "-lm" was gebracht? Würde mich ja mal interessieren…..

höchstwahrscheinlich wird die Mathematik-Funktionsbibliothek dazugelinkt, also die Funktionen in das Programm eingebunden [img]http://www.fb18.de/gfx/28.gif[/img] Da pow() wohl dazugehört, ist das notwendig, weil die Funktionsimplementation sonst fehlt :)

Re: T3 - Aufgabenblatt 12 2003-01-28 18:24
Slater
was ist denn der unterschied zu printf, da ist das ja nicht nötig..

Re: T3 - Aufgabenblatt 12 2003-01-28 20:22
Fred
bei mir funktioniert der Aufruf von C-Funktion pow(doublezahl, 1.0/3.0);
Ist doch wunderbar, wenns funktioniert [img]http://www.fb18.de/gfx/7.gif[/img]


Re: T3 - Aufgabenblatt 12 2003-01-28 21:09
TriPhoenix
was ist denn der unterschied zu printf, da ist das ja nicht nötig..

printf ist Teil der Standard-library, die wie der Name schon sagt Standard ist und die Bibliotheken enthält, die quasi in jedem C-Programm benutzt werden. wenn man die NICHT haben will muss man cc das auch extra sagen, dass er die bloß rauslassen soll. Alle anderen bibliotheken muss man per -lname reinpacken und da die Mathe-Bibliothek anscheinend nicht so oft genutzt wird, gehört die nicht zur Standardbibliothek und man muss -lm dazupacken.

Re: T3 - Aufgabenblatt 12 2003-01-29 12:31
Zaphod
Ich bin mir nicht ganz sicher, wie ich eine float-Zahl in ein f-Register bekomme. Der Parameter liegt doch zu Anfang in %i0, wenn ich ein neues Fenster aufmache. Den packe ich dann per "st" in [%sp+68] oder so. Und dann ld [%sp+68], %f0. Aber… wo ist denn jetzt der Unterschied dazu, als wenn ich das ganze einfach mit mov %i0, %f0 mache? Ich weiß, dass das nicht funktioniert, aber ich weiß nicht warum.

Re: T3 - Aufgabenblatt 12 2003-01-29 12:33
Zaphod
Ach.. oder liegt ein einzelner Parameter, wenn er double ist, einfach in zwei Registern, also %i0 und %i1 ?

Re: T3 - Aufgabenblatt 12 2003-01-29 12:49
Fred
Ich bin mir nicht ganz sicher, wie ich eine float-Zahl in ein f-Register bekomme. Der Parameter liegt doch zu Anfang in %i0, wenn ich ein neues Fenster aufmache. Den packe ich dann per "st" in [%sp+68] oder so. Und dann ld [%sp+68], %f0.
Fuer Single Zahlen macht man es genau so.

Aber… wo ist denn jetzt der Unterschied dazu, als wenn ich das ganze einfach mit mov %i0, %f0 mache? Ich weiß, dass das nicht funktioniert, aber ich weiß nicht warum.
Weil es diesen Befehl nicht gibt. Sparc ist eben RISC (reduced instruction set… oehm wofuer steht das C? :)

Ach.. oder liegt ein einzelner Parameter, wenn er double ist, einfach in zwei Registern, also %i0 und %i1 ?
Genau so ist es!


Re: T3 - Aufgabenblatt 12 2003-01-29 13:10
Zaphod
Danke

(reduced instruction set… oehm wofuer steht das C? :)

…computing. Hat da etwa jemand bei Lehmann nicht aufgepasst? [img]http://www.fb18.de/gfx/7.gif[/img]

Re: T3 - Aufgabenblatt 12 2003-01-29 20:45
Cyrax
JA. Du, du Pappnase. Deine Selbstgespräche sind echt nützlich [img]http://www.fb18.de/gfx/10.gif[/img]

Re: T3 - Aufgabenblatt 12 2003-01-30 10:13
Anonymer User
Ein netter Link zur Aktuellen Aufgabe! [img]http://www.fb18.de/gfx/15.gif[/img]
http://www.ph-ludwigsburg.de/mathematik/mmm/gruen_frieden.htm

Re: T3 - Aufgabenblatt 12 2003-01-30 20:14
XPhilosoph
Argl!
Wer das alles liest und versteht, um den Aufgabenzettel zu machen, hat meinen vollen Respekt!

Re: T3 - Aufgabenblatt 12 2003-01-30 21:09
TriPhoenix
Argl!
Wer das alles liest und versteht, um den Aufgabenzettel zu machen, hat meinen vollen Respekt!

Meinen auch [img]http://www.fb18.de/gfx/7.gif[/img]

Als Lösungsansatz für die Leute die noch dran sitzen die gewünschet Funktion als C-Code (war ne mühselige Sucherei das ausm Netz zu finden….)

double newtonRaphson(double x) { double y, dx, old; y = x / 3; do { old = y; dx = x - (y * y * y); y = y + dx / (3 * y * y); } while (y != old); return y; }
Viel Spaß noch [img]http://www.fb18.de/gfx/28.gif[/img]

Re: T3 - Aufgabenblatt 12 2003-01-30 22:30
Zaphod
Erwähnte ich, dass ich Assembler voll doof finde? [img]http://www.fb18.de/gfx/22.gif[/img]

Re: T3 - Aufgabenblatt 12 2003-01-30 22:33
TriPhoenix
Erwähnte ich, dass ich Assembler voll doof finde? [img]http://www.fb18.de/gfx/22.gif[/img]

<glaubenskriegmode>
Assembeler ist nicht doof
</glaubenskríegmode>
[img]http://www.fb18.de/gfx/28.gif[/img]

Re: T3 - Aufgabenblatt 12 2003-01-30 23:41
Fred
Erwähnte ich, dass ich Assembler voll doof finde? [img]http://www.fb18.de/gfx/22.gif[/img]
Starte doch eine entsprechende Umfrage [img]http://www.fb18.de/gfx/25.gif[/img]


Re: T3 - Aufgabenblatt 12 2003-01-31 00:59
Cyrax
Hey Fred, wie weit biste heute beim T3 Praktikum gekommen? Aufgabe 5 kurz vor Hanoi war das höchste der Gefühle…. is irgendwie echt zuviel für die Zeit, findeste nicht auch? [img]http://www.fb18.de/gfx/20.gif[/img]

Re: T3 - Aufgabenblatt 12 2003-01-31 10:05
Zaphod


Assembler

Assembler ist..…voll doof!…'n bischen doof!…mir doch egal!…gar nicht doof!…echt supi…smaragtgrün!





Umfrage nur für registrierte Besucher!


Antworten zu 'Assembler ist..':

…voll doof!: [img]http://www.sternenvolk.de/rapid/graphics/r7.gif[/img]

…'n bischen doof!: [img]http://www.sternenvolk.de/rapid/graphics/y2.gif[/img]

…mir doch egal!: [img]http://www.sternenvolk.de/rapid/graphics/b1.gif[/img]

…gar nicht doof!: [img]http://www.sternenvolk.de/rapid/graphics/m2.gif[/img]

…echt supi: [img]http://www.sternenvolk.de/rapid/graphics/c5.gif[/img]

…smaragtgrün!: [img]http://www.sternenvolk.de/rapid/graphics/g1.gif[/img]

[img]http://www.fb18.de/gfx/15.gif[/img]

Re: T3 - Aufgabenblatt 12 2003-01-31 13:45
Fred
Hey Fred, wie weit biste heute beim T3 Praktikum gekommen?
Wir haben die Hanoi Aufgabe gerade rechtzeitig um 15:59 beendet [img]http://www.fb18.de/gfx/7.gif[/img]

Aufgabe 5 kurz vor Hanoi war das höchste der Gefühle…. is irgendwie echt zuviel für die Zeit, findeste nicht auch? [img]http://www.fb18.de/gfx/20.gif[/img]
Bisher haben wir noch keinen Zettel komplett geschafft. Ich denke mal, die Zettel sind extra ein bischen groesser, damit alle 3 Stunden lang was zu tun haben. Denn in weniger als 3 Stunden sind die auf keinen Fall schaffbar (es sei denn, man hat sich zuhause extrem gut vorbereitet, d.h. alles schon aufgeschrieben).

Und die Konzentration kann natuerlich schon mal nachlassen, wenn man sich in einem Raum mit Manfred's Assistentin befindet [img]http://www.fb18.de/gfx/23.gif[/img]



Re: T3 - Aufgabenblatt 12 2003-01-31 13:55
TriPhoenix
Aufgabe 5 kurz vor Hanoi war das höchste der Gefühle…. is irgendwie echt zuviel für die Zeit, findeste nicht auch? [img]http://www.fb18.de/gfx/20.gif[/img]
Bisher haben wir noch keinen Zettel komplett geschafft. Ich denke mal, die Zettel sind extra ein bischen groesser, damit alle 3 Stunden lang was zu tun haben. Denn in weniger als 3 Stunden sind die auf keinen Fall schaffbar (es sei denn, man hat sich zuhause extrem gut vorbereitet, d.h. alles schon aufgeschrieben).

Ist auch denke ich ein bisschen Absicht. Hanoi ist ja wie bekannt das Scheinkriterium. Es wird nicht erwartet, dass man im 4ten Teil sonderlich weit kommt (sonst hätten die mal die Bugs da beseitigt ;). Von daher denke ich schon, dass die Zettel absichtlich etwas größer sind, damit im Prinzip jeder in 4 Sitzungen die 3 ersten Zettel schafft, und wer schneller ist soll sich halt noch mitm 4ten Zettel befassen



Re: T3 - Aufgabenblatt 12 2003-01-31 16:16
Tzwoenn
Alsooo, um mich mal wieder umbeliebt zu machen… ich hab bis ich mit dem 3. Zettel fertig war gedacht, dass wir alle schaffen müssen.
Ehrlich gesagt bereite ich sowas aus Prinzip NIE vorher vor, dementsprechend gross ist die anfängliche Verwirrung. Aber ich habs bisher immer geschafft, die Zettel kurz vor Ende der Zeit fertig zu kriegen, auch wenn die Assemblerlistings nicht nur Züllighoven das Wasser in die Augen getrieben hätten!?! [img]http://www.fb18.de/gfx/15.gif[/img] (Copy&Paste, keine Kommentare, Registerwahl nach Zufallsprinzip, kein systematisches Vorgehen sondern Try&Error-Prinzip)
Und was noch erstaunlicher ist: ES GEHT IMMER WIEDER!!! [img]http://www.fb18.de/gfx/17.gif[/img]

Re: T3 - Aufgabenblatt 12 2003-01-31 22:39
Cyrax
Und die Konzentration kann natuerlich schon mal nachlassen, wenn man sich in einem Raum mit Manfred's Assistentin befindet [img]http://www.fb18.de/gfx/23.gif[/img]

Ajo. Mit der hatte ich zwischendrin eine kleine Grundlagen-Konversation [img]http://www.fb18.de/gfx/10.gif[/img] Ne, mal im Ernst… die hat echt was drauf, was T angeht. Respekt….