Reele Zahlen in der Informatik

Gary12345

Ensign
Registriert
Sep. 2012
Beiträge
246
Guten Morgen,

ich beschäftige mich gerade mit einem interessanten Kapitel, die reellen Zahlen. Da ich schon etwas Vorwissen habe zu diesem Thema (Schule...), wollte ich hier paar Sachen ansprechen.

Ich veranschauliche etwas in einer Tabelle:

Vorzeichen​
Exponent​
Mantisse​
0​
30​
19891​
Wir nehmen an, wir reservieren zwei Ziffern für den Exponenten, sieben Ziffern für die Mantisse.

1. Vorzeichen 0 bedeutet +? So ist das zumindest auch in der Zweierkomplementdarstellung.
2. Der Exponent 30 ist im Dezimalsystem (10er-System) immer zugehörig zur Basis 10? Also 10^30?
3. Also im gesamten reservieren wir diese Zahl: +19891*10^30 ?

Wenn aber nun der Exponent negativ ist, hörte ich vom Begriff Bias. Laut meinem Informatikbuch (Selbststudium, um mich während den Ferien nicht zu langweilen) ist es ein sogenannter Verschiebewert. Warum verschiebt man einen negativen Exponent in den positiven Bereich? Würde mich um eine Erklärung freuen.

Danke schon mal im Vorraus.
 
Zuletzt bearbeitet:
Kapitel 1: Buchstabiere das Thema richtig

:D sprichst Du das auch so aus? Sorry, musste irgendwie sein...
 
Ja, aber mit Folgefehler im Text als Tippfehler ausgeschlossen und wäre es nicht der Titel, hätte ich auch nichts geschrieben :)
 
Als Erklärung könnte ich mir Vorstellen, dass dann das Rechenwerk aus 10^-n -> 1/10^n nimmt.

Im Dualen System des PCs gibts ja, wie erwähnt keine negativen Zahlen, deshalb wird ein Bit genommen/reserviert um eines festzulegen, falls erforderlich. Nun weiß ich jetzt nicht so exakt bescheid, aber
ich denke nach einer "unsichtbaren" Transformation wird gerechnet und dann zurück konvertiert.
 
Also man sollte vielleicht sagen, dass mit der Darstellung nur rationale Zahlen dargestellt werden können :) Ich dachte nämlich es geht um was anderes :)
 
Als Erklärung könnte ich mir Vorstellen, dass dann das Rechenwerk aus 10^-n -> 1/10^n nimmt.
Das erklärt mir aber diesen Bias nicht. Dies hatte ich mir nämlich auch schon überlegt. Der Bias ist ein Wert, der den negativen Exponent in den positiven verschiebt.

z.B. Bias = 49 Alter Exponent = 30 Neuer Exponent = 79 Warum?
 
Naja, das ist eigentlich recht simpel, aber lang zum erklären, deshalb mal folgender Link.

Warum macht man das? Naja damit man "schnell" einen Größenvergleich zwischen 2 Zahlen machen kann, indem man lexikographisch die Ziffernfolge em und e'm' (mit e: Exponent und m: Mantisse) vergleicht.Falls beispielsweise e>e', weiß man dass die Zahl mit Exponent e größer ist.
 
Okay, habs mal durchgelesen und ich meine, das der Bias Wert ein FESTER immer gleicher Wert ist, mit dem der Rechner die maximale
negative Zahl in eine positive noch bekommt, womit der PC erst weiter rechnen kann. Z.B. 127. Die Gültigkeit ist dann für Exponenten von -127 bis + 128 (geschätzt).
Damit wird der Wert 255 nicht überschritten und wird später bei der Ausgabe wieder zurückgerechnet.
Das Rückrechnen der 127 ist auch eingepflanzt und ist immer Teil der Prozedur.
 
Zuletzt bearbeitet:
Also es dient nur zum Größenvergleich? Wenn ja, ist es wirklich simpel. Wenn nicht, würde sich ja der wahre Wert einer beliebigen Zahl komplett ändern (nachdem der Bias hinzuaddiert wurde) , das würde keinen Sinn ergeben.

z.B.
Bias = 5
10^2 <> 10^7
100 <> 10000000

zum Größenvergleich bei negativen Exponenten wäre der Bias dagegen sehr nützlich.

Naja, das ist eigentlich recht simpel, aber lang zum erklären, deshalb mal folgender Link.
Der Link hat alles erklärt. Danke!
 
Zuletzt bearbeitet:
Falls dich technische Informatik auch weiter interessiert (oder du evtl. ein Studium anfangen willst):

"Digital Design and Computer Architecture"

sehr empfehlenswertes Buch zu genau solchen Themen.

Gruß
PaddyG
 
Jop ich werde auf jedenfall Informatik studieren und habe mir dazu auch ein fettes Buch gekauft, das von zwei ehrenvolle Professoren geschrieben wurde. Dein Buch werde ich mir mal ansehen. Danke!

Früher habe ich programmiert. Und vor ner Woche ist mir erst klar geworden, was Informatik eigentlich bedeutet. Rechnerarchitekturen wohl das spannendste, gefolgt von spannender Programmierung (+ Assembler [... genau das richtige ...]) , etwas Mathematik und noch viele weitere spannende Themen. Ich versteh nicht, warum viele den ersten Studiengang abbrechen (soweit ich das gehört habe - haben sie wohl das falsche Studienfach gewählt). Mathematik + Informatik => Genialität, die sich mit der Zukunft IMMER weiter entwickeln wird.

Gute Nacht
 
Zuletzt bearbeitet:
Naja, ob Rechnerarchitekturen das Spannendste ist weiss ich nicht. Aber das ganez wird halt schon ziemlich mathematisch. Und ich meine keine Schulmathematik. wenn du so an effiziente Algorithmen denkst dann gehts da schon ordentlich ab. Etwas Mathematik ist auch gut. Eigentlich ist die Informatik ein Teilgebiet der Mathematik. Nicht umsonst hat der Mathematiker Claude Shannon im wesentlichen die Informationstheorie entwickelt und das ist schon nen dicker Batzen der Informatik :)
 
Gary12345 schrieb:
Jop ich werde auf jedenfall Informatik studieren und habe mir dazu auch ein fettes Buch gekauft, das von zwei ehrenvolle Professoren geschrieben wurde. Dein Buch werde ich mir mal ansehen. Danke!

Früher habe ich programmiert. Und vor ner Woche ist mir erst klar geworden, was Informatik eigentlich bedeutet. Rechnerarchitekturen wohl das spannendste, gefolgt von spannender Programmierung (+ Assembler [... genau das richtige ...]) , etwas Mathematik und noch viele weitere spannende Themen. Ich versteh nicht, warum viele den ersten Studiengang abbrechen (soweit ich das gehört habe - haben sie wohl das falsche Studienfach gewählt). Mathematik + Informatik => Genialität, die sich mit der Zukunft IMMER weiter entwickeln wird.

Gute Nacht

Kommt drauf an was du genau studierst. Machst du Angewandte Informatik an einer FH (früher Allgemeine Info), dann wirst du durchaus programmieren und zwar ziemlich viel ! Anfangen wird es mit den Basics, geht dann über Rekursion die immer schwieriger wird, über Listen, Sortieralgorhitmen (Suchbaum, Heap, B-Baum usw.). Diesen Krams wirst du programmieren müssen. Die meisten brechen das Studium wegen der Programmierung ab ! Am Ende saß ich mit 3 weiteren Leuten im Praktium PC Raum, obwohl die Vorlesungen immer voll sind. Proggen hatte bei uns immer wöchentlich 2 Vorlesungen, der Rest 1. Gab auch doppelt so viele CreditPoints wie für ein anderes Modul.

Das ganze wird dann abgerundet mit (1. Semester) Technik. Also Logikschaltungen, AND, OR, NAND, XOR Chips etc. - solche Schaltungen mussten wir dann zusammen basteln, live und mit Noten. Wenn du Assembler gesehen hast, müsste dir das bekannt vorkommen :>

Später geht es dann weiter mit Netzwerken und Router Zeugs, also mit Cisco Routern Netzwerke einrichten im Praktikum.
Darunter fallen auch Verschlüsselungen, Zertifikate und sonstiger Krempel. Später geht es dann weiter mit Rechner Architekturen, also wie die Hardware aufgebaut ist und wie sie funktioniert. Das steigert sich dann immer weiter, Betriebssysteme (keine Bedienung dieser, war das härteste Modul bei uns !), Compiler Bau usw...

Kurz gesagt, Techink+Programmierung. Mathe ist geringfügig und mitunter noch eines der billigsten Module.
Normal kommt der übliche Schulkrempel zuerst, Graphen, Schnittpunkte, Interpolation bla blub. Alles mit Formeln und anwenden. Der Schwierigkeitsgrad ist kaum höher als im Abi, es geht nur zack zack. Was du damals in 1-2 Monaten gelernt hast, wird im Studium in einer Woche gemacht. Aber bei weitem nicht so pingelig - die Profs juckt es nicht wenn du dich verrechnest etc. bekommst nur 0.5 Punkte weniger. Geht darum es zu verstehen und proggen zu können, der Rechner rechnet dann für dich. Das würde dir ein Schullehrer nie sagen, genauso wenig wie sie zugeben würden das alle Fächer außer Mathe, Englisch und Info für ein Informatik Studium zu 100% nutzlos sind. Hätte ich das gewusst, hätte ich die anderen Schulfächer vernachlässigt und mehr Mathe gelernt. Die Endnote im Abi ist auch Latte, da Informatik fast nirgends einen NC hat - 60% der Leute fliegen eh noch vor dem 3ten Semester raus ^^

Dann kommen Matrizenrechnungen, also einfach umzusetzende Lösungswege für viele Gleichungen auf einmal, und hinterher die Wahrscheinlichkeitsrechnung. Immer wieder wirst du etwas zum programmieren bekommen, wo du dieses Wissen brauchst: Plotter, OpenGL Schattenberechnungen mit Matrizen/Vektoren usw.

PS:
Datenbanken kommen auch dran, sowie bischen Web Programmierung.
Wenn du Üben willst, setzt den bereits gelernten Mathe Krams in Code um. Z.b. eine analoge Uhr programmieren, dafür brauchst dann cosinus / sinus , Winkel und Einheitskreis...

Am besten man sucht sich eine FH / Uni aus und besorgt sich die Unterlagen. Geh einfach nach Vorlesungen in die Rechner Räume und frag irgend wen, der gibt dir sicher die Links zu den Vorlesungsfolien / Praktika Übungen.

PPS:
Sollte es Mathe Vorkurse geben, nicht schocken lassen. Was die da plappern ist für die Katz, blubbern dich als Anfänger mit Zeug aus dem 3ten Semester etc. voll.
 
Zuletzt bearbeitet von einem Moderator:
Gary12345 schrieb:
Der Bias ist ein Wert, der den negativen Exponent in den positiven verschiebt.
Nein, der Bias wird jedem Exponenten dazuaddiert.

Der Exponenten-Bias ist eine technische Lösung, und hat als solche keine "logische" Begründung.

Nehmen wir mal an, du hast für den Exponenten nur 2 Bit. Dann hast du 4 Werte: 0, 1, 2, 3. Jetzt ist es eben unpraktisch, wenn man die Werte einfach so benutzen würde. Man will ja auch negative Exponenten, um kleinere Zahlen beschreiben zu können. Man würde also folglich aus technischer Sicht hier einen Bias von 1 oder 2 bestimmen, denn das entspräche einen Raum zwischen -1,0,1,2 bzw. -2,-1,0,1. Die 0 liegt damit also ungefähr in der Mitte, was ja das Ziel ist. In der Praxis findet man meistens den Fall, dass es ein positive Zahle mehr gibt, als negative. Also im Beispiel, den ersten Fall.

Allerdings nur möglicherweise. Möglicherweise will man auch einen anderen Bias, sodass zB das Verhältnis zwischen positiven und negativen Zahlen anders ist.
 
Am besten man sucht sich eine FH / Uni aus und besorgt sich die Unterlagen. Geh einfach nach Vorlesungen in die Rechner Räume und frag irgend wen, der gibt dir sicher die Links zu den Vorlesungsfolien / Praktika Übungen.
:| Nächste Uni wäre an die 60 km entfernt. Hole mir derzeit nur Übungen aus dem Internet, meistens von Uni-Seiten. Wäre aber schön, wenn mich meine Eltern mal einmal hinbringen könnten.


Datenbanken kommen auch dran, sowie bischen Web Programmierung.
Wenn du Üben willst, setzt den bereits gelernten Mathe Krams in Code um. Z.b. eine analoge Uhr programmieren, dafür brauchst dann cosinus / sinus , Winkel und Einheitskreis...
Das werd ich auch machen.
@F_GXdx) Thanks!
 
Zuletzt bearbeitet:
Zurück
Oben