Ärgernis, falsche Info in geschlossenem Thread

coldblooded

Neuling
Thread Starter
Mitglied seit
06.05.2009
Beiträge
229
Ort
grenznah und fluchtbereit
Es heißt da oben:

"Was bedeutet eigentlich 32 Bit und 64 Bit in der Theorie?
Vereinfacht dargestellt bedeutet 64-Bit, dass ein Prozessor mit einem Takt 64 Bit (=8 Byte) verarbeiten kann. Ein 32 Bit Prozessor kann demnach mit einem Takt nicht mehr als 32 Bit (=4 Byte) verarbeiten. Zu den Vorteilen einer 64-Bit Architektur gehören die direkte Adressierung von mehr als 4 Gigabyte Arbeitsspeicher und die beschleunigte Arithmetik (Rechnen / Arbeiten) mit großen Zahlen."


Und das ist leider ganz falsch.

Sowohl 16bit-, 32bit-, als auch 64bit-Prozessoren rechnen seit fast 30 Jahren mit je nach Anwendungsfall 16 Bit (meist Integer), 32 Bit (häufig Fliesspunkt) und 64 Bit (immer Fliesspunkt).

Eingebürgert hat sich die Unterscheidung zw. 16bit-, 32bit- und 64bit-Prozessoren anhand der externen Adressierung. Später unterschied man auch die Registerbreiten entsprechend. Da gibt es insoweit einen Zusammenhang, als häufig über Register adressiert wird.

Ausserhalb des Bereichs Prozessoren für wissenschaftliche Anwendungen sind Registerbreiten oberhalb 32 Bit sinnloser Ballast. Seit 25 Jahren nutzt man in den seltenen Fällen, die 64 Bit Genauigkeit erfordern, Registerpaare.

Prozessoren, die pro Takt nur 32 Bit verarbeiten können, gab es praktisch nie. Das wären 16-Bitter ohne jede Arithmetik-Einheit mit fester Schaltlogik, und sowas wurde nie gebaut.

Üblicherweise verarbeitet eine 32-Bit-CPU 80-96 Bit pro Takt, nämlich zwei Register und einen Offset, oder zwei Register und Schaltbits, die aus dem Befehlscode abgeleitet sind. Dieser Vorgang kann allerdings mehrfach parallelisiert sein.

Üblicherweise sind heute alle CPUs 32 Bitter, die 64 Bit addressieren können. Da inzw. üblicherweise ganze Befehlsfolgen zugleich verarbeitet werden, kann man gar nicht mehr sagen, wie viele Bit pro Takt auf das nächste Zwischenergebnis Einfluss nehmen.

Grundsätzlich rechnen CPUs nicht unterschiedlich genau. Es ist allein der Code, der festlegt, mit welcher Stellenzahl und Genauigkeit gerechnet wird, wobei 64 Bit nur in den seltensten Fällen sinnvoll ist, und als 64 Bitter eigentlich falsch eingestufte CPUs (ebenso unsinnig wie die Kategorie der 64Bit-Betriebssysteme*) nichts anders machen als 32-Bitter.

Eine beschleunigte Arithmetik haben sogenannte 64-Bitter auch nicht. Fliesspunkt-Befehlssätze sprechen seit Anfang der 80er wahlweise ein oder zwei Registerpaare zugleich, also 64 Bit oder 128 Bit an, um damit 32 Bit oder 64 Bit Genauigkeit abzubilden. Wie lange die Abarbeitung eines Befehls in der ALU dann dauert, hat rein gar nichts damit zu tun.

* Der System-Code enthält keine Long Branches, und schon gar nicht über solche Distanzen, die auch keinerlei Sinn machen würden, und erst recht keine Fliesspunktberechnungen. Allein die Speicherverwaltung berücksichtigt eben die zusätzlichen Addressbereiche.
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh