Startseite   |  Site map   |  A-Z artikel   |  Artikel einreichen   |   Kontakt   |  
  


informatik artikel (Interpretation und charakterisierung)

Ieee -


1. Java
2. Viren

Das IEEE Format (Institute of Electrical and Electronics Engineers) ist eine genormte Gleitkommadarstellung und wird in den meisten Rechnersystemen verwendet. Bei beiden Formaten wird nur der Nachkommateil der Mantisse abgespeichert (1 Bit gespart)

IEEE Formate:
Gesamtlänge Vorzeichen Exponent Mantisse Charakteristik C/C++ Bezeichnung

32 Bit 1 Bit 8 Bit 23 Bit 127 float
64 Bit 1 Bit 11 Bit 52 Bit 1023 double
Beispiel: Wie werden die folgenden Zahlen in der Programmiersprache C abgespeichert?
void main

{
float a = + 5.0; //0x40A00000

float b = + 6.0; //0x40C00000
float c = -25.5; //0xC1CC0000

float d = - 6.0; //0xC0800000
float e = 0.0; //0x00000000

}


Schritt 1: a = + 5,0d
Schritt 2: a = 101b * 10b^0
Schrift 3: a = 1,01b * 10b^(10 + 01111111=10000001)
Schrift 4: a = \\,01b * 10b^(10 + 01111111=10000001)
gespeichert wird: 0 10000001 01000000000000000000000
V Exponent Mantisse

Speicherstelle von a: 0x40A00000


Schritt 1: c = - 25,5d
Schritt 2: c = - 11001,lb * 10b^0
Schritt 3: c = - l,10011b * 10b^(110 + 01111111 = 10000011)
Schritt 4: c = - \\,10011b * 10b^(110 + 01111111 = 10000011)
gespeichert wird: 1 10000011 100110000000000000000000
V Exponent Mantisse

Speicherstelle von c: 0xC1CC0000


Allgemeine Numerische Probleme
Ungenauigkeiten durch die binäre Darstellung
Reelle Zahlen können im Gleitkommaformat nicht immer exakt dargestellt werden. Dadurch kann es bei der Berechnung von arithmetischen Ausdrücken zu Ungenauigkeiten kommen.
Beispiel: 0,1d=0,00011001100110011...b Beispiel 0,11; 0,2; 0,4, usw. können nicht genau dargestellt werden.
Daher: Zahlen im Gleitkommaformat (float,double,...) nie auf Gleichheit prüfen! Statt dessen Prüfung auf > oder < oder E-Bereich.
int main()

{
float i=0.0;

for (i=0.0; i != 1.0; i += 0.1)
{
/* Endlosschleife, weil 0.1 nicht exakt dargestellt werden kann. */
printf(\"%f\",i);
};
return(0);

};
int main()

{
float i=0.0;

for (i=0.0; i1.0001; i += 0.1)
{
/* Durch die Prüfung auf den E-Bereich von 0,0001 ist es jetzt keine Endlosschleife mehr. */
printf(\"%f\",i);
};
return(1);

};
Fehler durch Zwischenergebnisse
Bei der Berechnung arithmetischer Ausdrücke kommt es durch Rundungsfehler und Überlauffehler bei Zwischenergebnissen zu Ungenauigkeiten. Beispiel: 5-stellige ganze Zahlen A = 00900 B = 10000
A * B / 100 = 00000

A *(B / 100) = 90000
(A * B) / 100 = 00000
Also: Auf die Reihenfolge der Auswertung achten!
Bei der technischen Arithmetik gilt NICHT:

. das Assoziativgesetz
. das Distributivgesetz

es gilt: a + (b + c) (a + b) + c
a * (b + c) (a * b) + (a * c)

Beispiel (8 Bit Format):
a = 11,0000

b = 0,0000 11
c = 0,0000 1

a = 11,0000

+ (b+c)= 0,0001 --
=================

a+ (b+c)= 11,0001 --


(a+b) = 11,0000 --
+C = 0,0000 --

====================
(a+b)+c = 11,0000 --

Wie man sieht, sind beide Ergebnisse unterschiedlich.

Das Jahr 2000 Problem

Das Jahr 2000 Problem entstand durch die kurzsichtige Umsetzung der Datumsformate mit nur 2 Jahresziffern. Statt die ganze Jahreszahl abzuspeichern (z.B. 1980) wurden nur die letzten 2 Stellen abgespeichert (80). Gerade das BCD Format verleitet dazu, auf diese Weise Speicher zu sparen.

Zahlenumwandlungen
Die meisten Computer verwenden bei der Ein und Ausgabe von Zahlen das Zehnersystem. Trotzdem kann es vorkommen, daß man in die Lage versetzt wird, eine hexadezimale Zahl in ihr dezimales Äquivalent umrechnen zu müssen.
Umwandlung vom dezimalen Zahlen in ein anderes System
Als Beispiel wird die Zahl 29d ins binäre System umgerechnet

29 mod 2 = 1 29 div 2 = 14
14 mod 2 = 0 14 div 2 = 7

7 mod 2 = 1 7 div 2 = 3
3 mod 2 = 1 3 div 2 = 1

1 mod 2 = 1 1 div 2 = 0 => Fertig
29 mod 2 gibt 1. 29 div 2 gibt 14, und 14 wird für die nächste Rechenoperation verwendet. Der Vorgang wird solange wiederholt, bis das Ergebnis der Divison 0 ist. Da das Ergebnis von unten nach oben gelesen werden muß, lautet es: 29d = 11101b.
Umwandlung von einem anderen System ins dezimale
Als Beispiel wird die Zahl 1 1001b ins dezimale System umgerechnet. (1*2+1)*2+0)*2+0)*2+1=25d Schema: Die erste Ziffer wird mit der Basis des Systems multipliziert und die nächste Ziffer wird zum Ergebnis addiert. Das Ergebnis wird wieder mit der Basis des Systems multipliziert und die nächste Ziffer wird addiert. Der Vorgang wiederholt sich solange, bis die letzte Ziffer addiert wurde. Dieses Verfahren wird auch Hornerschema genannt.
Umwandlung vom dezimalen Zahlen mit Nachkommastellen in ein anderes System
Zur Verdeutlichung wird die Zahl 0,815d in das binäre Zahlensystem umgewandelt.

0.815 * 2 = 1.63
0.630 * 2 = 1.26

0.260 * 2 = 0.52
0.540 * 2 = 1.04

0.040 * 2 = 0.08
...
Das Schema funktioniert folgendermaßen: Die umzuwandelnde Zahl wird mit der Basis des Zielsystems multipliziert. Die Vorkommastelle des Ergebnisses ist die erste Ziffer des Endergebnisses. Die Nachkommastelle des Ergebnisses wird für die nächste Multiplikation verwendet. Im Beispiel wird das Ergebnis nur auf 5 Nachkommastellen genau ausgerechnet. Das Ergebnis wird bei diesem Rechenverfahren von oben nach unten gereiht, und sieht folgendermaßen aus: 0,11010b.
Umwandlung von einem anderen System ins dezimale
Als Beispiel wird die Zahl 0,11010b in ihr dezimales Äquivalent umgerechnet. (0/2+1)/2+0)/2+1)/2+1)/2=0.8125d Das Schema ist ähnlich dem Hornerschema bei der Umwandlung von einem anderen System ins dezimale, nur wird mit der Basis des Zielsystems dividiert (und nicht multipliziert) und die Ziffern der umzuwandelnden Zahl werden von hinten nach vorne bearbeitet.
Umwandlung von Zahlen in binärer Darstellung zu hexadezimaler Darstellung
Die Umwandlung zwischen binärer und hexadezimaler Darstellung kann leicht durchgeführt werden. Man denkt sich die Ziffern der Zahl in ihrer binären Darstellung vom Dezimalpunkt weg sowohl nach links als auch nach rechts in Vierergruppen aufgeteilt und konvertiert jede Gruppe für sich. Gegebenenfalls sind führende Nullen zu ergänzen oder Nullen am Ende anzuhängen.
Beispiel: 010 1010 1l10,1111 0001 1000b = 2AE,F18h
Die Umwandlung in die umgekehrte Richtung ist genau so leicht zu realisieren. Jede hexadezimale Ziffer entspricht einer Vierergruppe im Binären System. Die Tatsache, daß die Konvertierung zwischen diesen beiden Zahlendarstellungen so leicht durchgeführt werden kann und die kompakte Darstellung sind die Hauptgründe für die Verbreitung des hexadezimalen Zahlensystems innerhalb der Informatik.
Darstellung negativer Zahlen im Binärsystem
Eine negative Zahl -x erfüllt im Prinzip nur die Forderung: x + (-x) = 0 Diese einfache Forderung kann dadurch realisiert werden, daß man negative Zahlen im Binärsystern im Zweierkomplement abspeichert. Das Zweierkomplement sei an einem Beispiel erklärt: +5d = 0000 0101b Man invertiert zuerst jede Ziffer der positiven Zahl. (1111 1010b) Zum Ergebnis zählt man 1 hinzu und erhält so das Zweierkomplement -5d = 1111 1011b. Um negative Zahlen wieder in ihre Postive Form zu bringen, muß die Prozedur nur wiederholt werden: -13d = 1111 0011b; invertiert: 0000 1100b; 1 hinzugezählt: 0000 1101b = 13d

 
 

Datenschutz
Top Themen / Analyse
indicator Die QIC-Standards
indicator 1000Base-T Gigabit Ethernet
indicator EIDE:
indicator Novell NetWare
indicator AKTIVITÄTSDIAGRAMM
indicator Systementwickler
indicator Kalibrierung -
indicator RIP (Routing Information Protocol)
indicator Programmerstellung
indicator TCP - IP


Datenschutz
Zum selben thema
icon Netzwerk
icon Software
icon Entwicklung
icon Windows
icon Programm
icon Unix
icon Games
icon Sicherheit
icon Disk
icon Technologie
icon Bildung
icon Mp3
icon Cd
icon Suche
icon Grafik
icon Zahlung
icon Html
icon Internet
icon Hardware
icon Cpu
icon Firewall
icon Speicher
icon Mail
icon Banking
icon Video
icon Hacker
icon Design
icon Sprache
icon Dvd
icon Drucker
icon Elektronisches
icon Geschichte
icon Fehler
icon Website
icon Linux
icon Computer
A-Z informatik artikel:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z #

Copyright © 2008 - : ARTIKEL32 | Alle rechte vorbehalten.
Vervielfältigung im Ganzen oder teilweise das Material auf dieser Website gegen das Urheberrecht und wird bestraft, nach dem Gesetz.
dsolution