Autor Thema: 16, 32, 64 Bit ?  (Gelesen 6335 mal)

bscreator

  • Gast
Gespeichert
« am: 31. January 2005, 09:57 »
Hi Leute,

auf was beziehen sich eigentlich die Bit-Zahlen bei Prozessoren konkret ?
Klar, dass die 64-Bit schneller sind und mehr Transistoren haben als die 32 Bit-Rechner.
Aber auf was bezieht sich die Bit-Rate bei Prozessoren wirklich ? Haben die vielleicht "größere Register" als ein Standard-32-Bit-PC ?

hannibal

  • Host
  • Beiträge: 400
    • Profil anzeigen
    • brainsware - the rock.
Gespeichert
« Antwort #1 am: 31. January 2005, 11:27 »
die bit-zahl eines prozessors bezieht sich sowohl auf die groesse der register, als auch der datenleitungen (logisch) - mit geschwindigkeit hat das nichts zu tun. ein 64bit rechner mit 2ghz ist nicht viel schneller als ein 32bitter mit 2ghz..ausser das jeweilige programm ist auf 64bit ausgelegt und nutzt die vorteile.

lg, hannibal
\\o
o//
\o/

Svenska

  • Beiträge: 1 792
    • Profil anzeigen
Gespeichert
« Antwort #2 am: 31. January 2005, 11:30 »
8 Bit-Prozessoren haben Register mit 8 Bit (1 Byte) Breite.
16-Bit-Prozessoren haben Register mit 16 Bit (2 Byte) Breite.
32-Bit-Prozessoren haben Register mit 32 Bit (4 Byte) Breite.
64-Bit-Prozessoren haben Register mit 64 Bit (8 Byte) Breite.

So jedenfalls sollte es sein.

Aber heutzutage haben die Prozessoren intern 256 oder mehr Bit, nach aussen gefuehrt werden je nach Zweck 64, 32, 16 oder gar nur 8 Bit (vgl. ISA-Bus). Der 80386SX war ja auch ein 32-Bit-Prozessor, der aber nur 16 Bits nach aussen fuehrte. Der 8088 war ein 16-Bit-Prozessor, der die Aussenwelt nur mit 8 Bit sah.

Fuer den Programmierer stellt die Bitzahl des Prozessors die Zahl dar, mit der der Prozessor ausgereizt wird. Einen 64-Bit-Prozessor mit 8-Bit-Anwendungen zu fuettern ist ein bisschen wertlos. Umgekehrt ist unwahrscheinlich viel Logik erforderlich, um das zu bewerkstelligen. Das kostet ebenfalls Zeit.

Hoffe, ich hab das jetzt einigermassen erklärt und nicht wirklich völlig verfehlt :)

Gruesse Svenska

Jidder

  • Administrator
  • Beiträge: 1 625
    • Profil anzeigen
Gespeichert
« Antwort #3 am: 31. January 2005, 13:52 »
Zitat von: bscreator
Klar, dass die 64-Bit schneller sind

öhm ich würd eher sagen es ist doppelt so langsam 64 bit zu lesen/schreiben/addieren/subtrahieren wie mit 32bit ...
Dieser Text wird unter jedem Beitrag angezeigt.

TeeJay

  • Beiträge: 630
    • Profil anzeigen
    • http://www.jay-code.de
Gespeichert
« Antwort #4 am: 31. January 2005, 14:23 »
Die Bitzahl hat in erster Linie etwas mit der Größe der Register des Prozessors zu tun.

Im Idealfall ist auch der Daten- und Adressbus so breit. Dies ist aber wie bereits genannt nicht die Regel gewesen.

Die 64 Bit CPUs adressieren auch "nur" mit 48? Bit soweit ich gelesen habe und nicht mit 64.

Im Grunde kann man davon ausgehen das eine CPU mit mehr Bit schneller ist, da sie mehr Daten in einem Durchgang verarbeiten kann.

Jedoch gibt es ein paar Dinge die mit größeren Registern theoretisch langsamer werden. Dazu gehören zum Beispiel Multiplikation und Division. Das sind sehr aufwendige Operationen die zeitlich sehr davon abhängen wie groß die Zahlen sind die dort verarbeitet werden.

In erster Linie wurde aber deshalb auf 64 Bit erweitert um mehr Arbeitsspeicher adressieren zu können, da dies derzeit das Hauptproblem darstellt.

Zum anderen erfordern manche (gerade Wissenschaftliche) Berechnungen hohe Genauigkeit die man eben nur über größere Register erreichen kann.
----------------------
Redakteur bei LowLevel

Roshl

  • Beiträge: 1 128
    • Profil anzeigen
    • http://www.lowlevel.net.tc
Gespeichert
« Antwort #5 am: 31. January 2005, 17:48 »
Für wissenschaftliche Berechnungen sind andere Prozessoren aber besser geeignet.
Die Bit Angabe hat mit der Adress Bus nichts zu tun.
16Bit->20 Bit Adressbus
32Bit->48 Bit Adressbus
64Bit->nicht 48 aber auch nicht 64 ka was
Hauptsächlich geht es um die Allzweckregisterbreite. Aber auch um den Datenbus, also wieviele Bits pro Takt geschaufelt werden können. Ein Datenbus von 32 Bit heisst das 32Bit transportiert werden können, wenn das Register 64 Bit hat müssen eben 2 Takte allein für das transportieren verwendet werden. Das war beim 8088 so 16Bit Register 8Bit Datenbus 20Bit Adressbus.
Wie schon gesagt wurde sind intern die Register etwas anders. Es gibt vile Schattenregister, sozum Beispiel sind alle Register eigentlich Doppelt vorhanden, wegen der Out-Of-Order ausführung usw.
Egal Fazit: Primär wird damit auf die Breite der Allzweckregister Stellung genommen, in zweiter Linie auf den Datenbus, der meistens (aber nicht immer) genauso breit ist.
[schild=1]Wieder ein wertvoller(?) Beitrag von Roshl[/schild]

 

Einloggen