Studium, Ausbildung und Beruf
 StudiumHome   FAQFAQ   RegelnRegeln   SuchenSuchen    RegistrierenRegistrieren   LoginLogin

Konvertieren in Gleitkommazahl - Erklärung gesucht
Neues Thema eröffnen   Neue Antwort erstellen
Foren-Übersicht -> Informatik-Forum -> Konvertieren in Gleitkommazahl - Erklärung gesucht
 
Autor Nachricht
Timo_P
Full Member
Benutzer-Profile anzeigen
Full Member


Anmeldungsdatum: 26.10.2007
Beiträge: 268

BeitragVerfasst am: 07 Nov 2007 - 15:19:59    Titel: Konvertieren in Gleitkommazahl - Erklärung gesucht

Hallo,
Ich habe eine Frage zur Umwandlung von Zahlen in ein Gleitkommaformat.
Ich habe z.B. eine Zahl 123 im Dezimalsystem vorliegen. Wie würde ich diese in ein 16 Bit, 32 Bit oder so System umwandeln ?

Also das erste Bit ist ja für das Vorzeichen gedacht. Also eine "1" bei negativem Vorzeichen und eine "0" bei positiven Vorzeichen.

Dann geht es an die Exponenten:

Darf ich mir nun aussuchen, was ich aus der Zahl mache? Also im Dezimalsystem z.B. 123 * 10^-3 oder 123 *10^4 .. jenachdem, wie ich grad Lust drauf habe, oder gibt es da Regeln abgesehen von den Bits die mir für den Exponent zustehen?

Wie gehe ich anschließend mit der Mantisse um ? Muss ich da die 123 lediglich ins Binärsystem wandeln ? Also 123 = 1111011.

Schreibe ich dann wenn ich nur im 32 Bit Format bin:

0 für mein vorzeichen ...
1111011 für meine Mantisse ... wenn ich mehr stellen für die Mantisse habe die restlichen mit "0" auffüllen? Also ...01111011 ?
Und für meinen Exponenten ?

Finde keine Seite auf der dass Schritt für Schritt erklärt wird, wie man eine Zahl in ein Gleitkommaformat umwandelt :(
gotcha
Full Member
Benutzer-Profile anzeigen
Full Member


Anmeldungsdatum: 15.01.2007
Beiträge: 249

BeitragVerfasst am: 07 Nov 2007 - 15:30:02    Titel:

Moin,

hier:http://de.wikipedia.org/wiki/Gleitkommazahl#Gleitkommazahlen_in_der_Digitaltechnik

Gruß
Timo_P
Full Member
Benutzer-Profile anzeigen
Full Member


Anmeldungsdatum: 26.10.2007
Beiträge: 268

BeitragVerfasst am: 07 Nov 2007 - 16:34:29    Titel:

Danke, den Link kannte ich. Verstehe dass mit dem Exponenten nicht. Denkt man sich einfach aus, wie weit man das Komma verschieben will ?

Also bei 123 folgende Möglichkeiten :

12,3
1,23
0,123
0,0123
.
.
.
u.s.w.

Mantisse m =

123/2= 61 R 1
61/2= 30 R 1
30/2= 15 R 0
15/2= 7 R 1
7/2= 3 R 1
3/2= 1 R 1
1/2= 0 R 1


---> 1111011

Ich habe an dem Beispiel nun im 32 Bit Format folgendes:

V = 0
M = 1111011
E = Ja da fehlt es mir dran .. wie komm ich da drauf ? Ist mein Vorgehen bisher richtig?
Whoooo
Valued Contributor
Benutzer-Profile anzeigen
Valued Contributor


Anmeldungsdatum: 08.06.2005
Beiträge: 9161

BeitragVerfasst am: 07 Nov 2007 - 17:35:40    Titel:

Zitat:
Danke, den Link kannte ich. Verstehe dass mit dem Exponenten nicht. Denkt man sich einfach aus, wie weit man das Komma verschieben will ?

Also bei 123 folgende Möglichkeiten :

12,3
1,23
0,123
0,0123

Hier wird "normalisiert". Im allgemeinen wird das Komma so gesetzt, dass alle vorangehenden Ziffern 0 sind, sprich die erste Stelle ungleich 0 wird die erste Nachkommastelle. Beispiele:

123 => 0.123 * 10^3
12.3 => 0.123 * 12^2
1230 => 0.123 * 10^4
0.00123 => 0.123* 10^-2

Da das Normalisierungsverfahren bei der Decodierung als bekannt vorausgesetzt wird, wird anschließend auf die führende 0 verzichtet und beispielsweise die Zahl 123 in 0.123*10^3 konvertiert und dann mit Mantisse 123 und Exponent 3 gespeichert. Wer auch immer die zahl dekodiert (ALU, oder?), der weiß, dass es sich um Nachkommastellen handelt. Soweit klar?
_________________
<SA> i'm going to become rich and famous after i invent a device that allows you to stab people in the face over the internet
Timo_P
Full Member
Benutzer-Profile anzeigen
Full Member


Anmeldungsdatum: 26.10.2007
Beiträge: 268

BeitragVerfasst am: 08 Nov 2007 - 21:20:58    Titel:

Hallo,
Danke für die Tips. Brauche nun ein Programm, Tool oder so aus dem Netz mit dem ich mein Ergebniss überprüfen kann. Es gibt ja die Programme in die man eine Dezimalzahl gibt und das Programm diese in ein gewünschtes System konvertiert. Brauche dies nun für Gleitkommazahlen. Kennt wer eins?
Whoooo
Valued Contributor
Benutzer-Profile anzeigen
Valued Contributor


Anmeldungsdatum: 08.06.2005
Beiträge: 9161

BeitragVerfasst am: 08 Nov 2007 - 21:35:37    Titel:

http://www.google.de/search?hl=de&q=floating+point+converter+applet&btnG=Google-Suche&meta=

geh mal die Hits durch, vor allem das dritte sieht brauchbar aus (die anderen können meist nur hex<->float). Der hier liefert auch eine schöne Erklärung für Gleitpunktzahlen, Normalisierung und anderes (das Applet selber ist ganz unten):
http://www.randelshofer.ch/fhw/gri/float.html
_________________
<SA> i'm going to become rich and famous after i invent a device that allows you to stab people in the face over the internet
Beiträge der letzten Zeit anzeigen:   
Foren-Übersicht -> Informatik-Forum -> Konvertieren in Gleitkommazahl - Erklärung gesucht
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

Chat :: Nachrichten:: Lexikon :: Bücher :: Impressum