web-dev-qa-db-ger.com

Was ist der Unterschied zwischen einem 32-Bit- und einem 64-Bit-Prozessor?

Ich habe versucht, mich über 32-Bit- und 64-Bit-Prozessoren zu informieren ( http://en.wikipedia.org/wiki/32-bit_processing ). Ich verstehe, dass ein 32-Bit-Prozessor (wie x86) Register mit einer Breite von 32 Bit hat. Ich bin mir nicht sicher, was das bedeutet. Es verfügt also über spezielle "Speicherbereiche", in denen ganzzahlige Werte bis zu 2 ^ 32 gespeichert werden können.

Ich möchte nicht dumm klingen, aber ich habe keine Ahnung von Prozessoren. Ich gehe davon aus, dass 64-Bit im Allgemeinen besser ist als 32-Bit. Obwohl mein Computer jetzt (ein Jahr alt, Win 7, Intel Atom) einen 32-Bit-Prozessor hat.

38
user485498

Alle Berechnungen finden in den Registern statt. Wenn Sie Variablen in Ihrem Code addieren (oder subtrahieren oder was auch immer), werden sie aus dem Speicher in die Register geladen (sofern nicht bereits vorhanden). Sie können jedoch eine unendliche Anzahl von Variablen und die Anzahl der Register deklarieren ist begrenzt). Wenn Sie also über größere Register verfügen, können Sie gleichzeitig "größere" Berechnungen durchführen. Nicht, dass dieser Größenunterschied in der Praxis bei regulären Programmen so wichtig ist (da ich zumindest selten Werte über 2 ^ 32 bearbeite), aber so funktioniert es.

Bestimmte Register werden auch als Zeiger in Ihrem Speicherbereich verwendet und begrenzen daher die maximale Speichermenge, auf die Sie verweisen können. Ein 32-Bit-Prozessor kann nur auf 2 ^ 32 Bytes verweisen (das sind ungefähr 4 GB Daten). Ein 64-Bit-Prozessor kann viel offensichtlicher verwalten.

Es gibt auch andere Konsequenzen, aber das sind die beiden, die mir in den Sinn kommen.

37
Jakob

Der Prozessor ruft Daten aus dem Speicher ab, dh RAM durch Angabe seiner Adresse an MAR (Speicheradressregister). Die Auswahlelektronik findet dann diese Adresse in der Speicherbank und ruft die Adresse ab Daten und legt sie in MDR (Memory Data Register) ab Diese Daten werden zur weiteren Verarbeitung in einem der Register des Prozessors aufgezeichnet. Deshalb bestimmt die Größe des Datenbusses die Größe der Register des Prozessors. Wenn mein Prozessor ein 32-Bit-Register hat Wenn die Datengröße 32 Bit überschreitet, sind zwei Abrufzyklen erforderlich, um die Daten darin zu haben. Dies verlangsamt die Geschwindigkeit der 32-Bit-Maschine im Vergleich zu 64-Bit, was die Operation nur in EINEM Abrufzyklus abschließen würde. Offensichtlich macht es für die kleineren Daten keinen Unterschied, ob meine Prozessoren mit der gleichen Geschwindigkeit getaktet werden. Auch bei 64-Bit-Prozessoren und 64-Bit-Betriebssystemen sind meine Anweisungen gültig Immer 64 Bit groß sein ... was unnötig mehr Speicherplatz verbraucht.

19
ht.of.ignorance

Erste 32-Bit- und 64-Bit-Architekturen werden Architekturen genannt.

Diese Architekturen bedeuten, dass wie viel Daten ein Mikroprozessor innerhalb eines Befehlszyklus verarbeitet, d. H. Abrufen-Dekodieren-Ausführen

In einer Sekunde kann es Tausende bis Milliarden von Befehlszyklen geben, abhängig von einem Prozessordesign.

32-Bit bedeutet, dass ein Mikroprozessor 4 Datenbytes in einem Befehlszyklus ausführen kann, während 64-Bit bedeutet, dass ein Mikroprozessor 8 Datenbytes in einem Befehlszyklus ausführen kann.

Da der Mikroprozessor mit anderen Teilen des Computers kommunizieren muss, um Daten abzurufen und zu senden, d. H. Speicher, Datenbus und Videocontroller usw., müssen sie theoretisch auch die 64-Bit-Datenübertragung unterstützen. Aus praktischen Gründen wie Kompatibilität und Kosten sprechen die anderen Teile möglicherweise immer noch mit dem Mikroprozessor in 32 Bit. Dies geschah im ursprünglichen IBM-PC, wo sein Mikroprozessor 8088 eine 16-Bit-Ausführung ermöglichte, während er aus Kostengründen und aus Gründen der Kompatibilität mit vorhandenen Teilen mit anderen Teilen des Computers in 8 Bit sprach.

Stellen Sie sich vor, dass Sie auf einem 32-Bit-Computer 'a' als 'A' schreiben müssen, d. H. In CAPSLOCK, sodass für den Vorgang nur 2 Byte erforderlich sind, während der Computer 4 Byte Daten liest, was zu einem Overhead führt. Dieser Overhead erhöht sich bei 64-Bit-Computern auf 6 Byte. 64-Bit-Computer müssen also nicht immer schnell sein.

Beachten Sie, dass 64-Bit-Fenster nur dann auf einem Mikroprozessor ausgeführt werden können, wenn sie die 64-Bit-Ausführung unterstützen.

18
Bubba Yakoza

32-Bit-Prozessoren können eine Speicherbank mit 32-Bit-Adresse mit adressieren. Sie können also 2 ^ 32 Speicherzellen und somit eine begrenzte Menge an adressierbarem Speicher (~ 4 GB) haben. Auch wenn Sie Ihrem Gerät eine weitere Speicherbank hinzufügen, kann diese nicht adressiert werden. 64-Bit-Maschinen können daher bis zu 2 ^ 64 Speicherzellen adressieren.

2
Simon

Von was bedeutet 32-Bit- oder 64-Bit-Prozess ?? durch kenshin123:

Die virtuellen Adressen eines Prozesses sind die Zuordnungen einer Adresstabelle, die dem realen physischen Speicher im System entsprechen. Aus Gründen der Effizienz und Sicherheit erstellt der Kernel eine Abstraktion für einen Prozess, die die Illusion vermittelt, einen eigenen Adressraum zu haben. Diese Abstraktion wird als virtueller Adressraum bezeichnet. Es ist nur eine Tabelle mit Hinweisen auf das physische Gedächtnis.

So wird einem 32-Bit-Prozess ein Adressraum von etwa 2 ^ 32 oder 4 GB zugewiesen. Unter der Haube bedeutet dies, dass der Prozess eine 32-Bit-Seitentabelle erhält. Darüber hinaus verfügt diese Seitentabelle über ein 32-Bit-VAS, das 4 GB Arbeitsspeicher auf dem System zuordnet.

Ja, ein 64-Bit-Prozess verfügt über einen 64-Bit-VAS. Ist das sinnvoll?

0
prat

32-Bit und 64-Bit sind im Grunde genommen die Registergröße, registrieren den schnellsten Speichertyp und sind der CPU am nächsten. Ein 64-Bit-Prozessor kann mehr Daten für die Adressierung und Übertragung speichern als ein 32-Bit-Register. Es gibt jedoch andere Faktoren, die auch von der Geschwindigkeit des Prozessors abhängen, z. B. Anzahl der Kerne, Cache-Speicher, Architektur usw.

Referenz: nterschied zwischen 32-Bit-Prozessor und 64-Bit-Prozessor

0
Mohd Shibli

Von hier :

Der Hauptunterschied zwischen 32-Bit-Prozessoren und 64-Bit-Prozessoren besteht in der Geschwindigkeit, mit der sie arbeiten. 64-Bit-Prozessoren können als Dual-Core-, Quad-Core- und Sechs-Core-Version für Heimcomputer geliefert werden (acht Core-Versionen folgen in Kürze). Mehrere Kerne erhöhen die Verarbeitungsleistung und beschleunigen den Computerbetrieb. Softwareprogramme, für deren Funktion viele Berechnungen erforderlich sind, arbeiten auf den 64-Bit-Mehrkernprozessoren zum größten Teil schneller. Es ist wichtig zu beachten, dass 64-Bit-Computer weiterhin 32-Bit-basierte Softwareprogramme verwenden können, auch wenn das Windows-Betriebssystem eine 64-Bit-Version ist.

Ein weiterer großer Unterschied zwischen 32-Bit-Prozessoren und 64-Bit-Prozessoren ist der maximal unterstützte Arbeitsspeicher (RAM). 32-Bit-Computer unterstützen maximal 3-4 GB Arbeitsspeicher, während ein 64-Bit-Computer Arbeitsspeicher von mehr als 4 GB unterstützen kann. Dies ist wichtig für Softwareprogramme, die für Grafikdesign, Konstruktionsdesign oder Videobearbeitung verwendet werden und bei denen viele Berechnungen zum Rendern von Bildern, Zeichnungen und Videomaterial durchgeführt werden.

Zu beachten ist, dass 3D-Grafikprogramme und -Spiele vom Umstieg auf einen 64-Bit-Computer nicht viel, wenn überhaupt, profitieren, es sei denn, das Programm ist ein 64-Bit-Programm. Ein 32-Bit-Prozessor ist für jedes Programm ausreichend, das für einen 32-Bit-Prozessor geschrieben wurde. Bei Computerspielen erhalten Sie eine viel höhere Leistung, wenn Sie die Grafikkarte aktualisieren, anstatt einen 64-Bit-Prozessor zu erwerben.

Letztendlich werden 64-Bit-Prozessoren in Heimcomputern immer häufiger eingesetzt. Die meisten Hersteller bauen Computer mit 64-Bit-Prozessoren, weil sie billiger sind und mehr Benutzer 64-Bit-Betriebssysteme und -Programme verwenden. Einzelhändler für Computerteile bieten immer weniger 32-Bit-Prozessoren an und bieten möglicherweise bald überhaupt keine mehr an.

0
kombsh