32-Bit-Architektur

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
32-Bit-Prozessor

Unter 32-Bit-Architektur versteht man in der EDV eine Prozessorarchitektur, deren Wortbreite 32 Bit beträgt.

Architekturen[Bearbeiten]

sowie diverse weitere Designs.

Design[Bearbeiten]

Vereinfacht dargestellt bedeutet 32-Bit, dass die Prozessoren durch ihr ALU-Design so ausgelegt sind, dass 32 Bit (also 4 Byte) gleichzeitig beziehungsweise während eines Taktes verarbeitet werden können. Das schließt die externe und interne Gestaltung von Datenbus und die Breite des Registersatzes mit ein. Dies gilt analog für die gängigen Adressierungs-Arten, wobei die Bitbreite der Recheneinheit (ALU) sich prinzipiell von der der Adresseinheit unterscheiden kann (wie etwa auch bei 64-Bit-CPUs).

32 Bit sind eine 32 Ziffern lange Zahlenreihe aus Einsen und Nullen.

Vorteile[Bearbeiten]

Die Vorteile von höherbittigen CPUs liegen in der einfacheren Berechnung größerer Integer-Werte (durch die breitere ALU), was zum Beispiel Vorteile bei Verschlüsselungsalgorithmen, grafischen Berechnungen (zum Beispiel Festkommaarithmetik für Computerspiele), 32-Bit-Dateisystemen oder Multimediaformaten (MPEG-2, MP3) mit sich bringt.

Probleme[Bearbeiten]

Ohne speziell angepasste Betriebssysteme kann allerdings in der Regel kein großer Vorteil aus dem Wechsel von 16-Bit- auf 32-Bit-CPUs gezogen werden.

Ähnlich wie bei SIMD- oder AltiVec-Erweiterungen ist also auch für 32-Bit-Systeme gewöhnlich speziell angepasste Software nötig.

Allerdings verfügt nicht jedes System mit 32-bit breitem Datenpfad auch über einen 32-bit breiten Adresspfad, also einen 4-GiB-Adressraum. Bei älteren IBM-Großrechnern (System/360 und System/370) wurden nur 24 Bit zur Adressierung verwendet (16-MiB-Adressraum). Da das überzählige Byte von Betriebssystem und Anwendungsprogrammen für Flagbits genutzt wurde, war der Übergang zur 31-Bit-Adressierung (2-GiB-Adressraum) mit nur noch einem Flagbit komplex. In einigen Systemen ist der Adresspfad schmaler oder größer als 32Bit. Seit dem Pentium Pro können z. B. die x86er CPUs mit 36Bit adressieren, was einem Adressraum von 64 GiB entspricht.

Programmiermodell[Bearbeiten]

Unter der Programmiersprache C schlägt sich die Anzahl der Bits insbesondere bei der Größe der Datentypen void*, int und manchmal auch bei long, sowie deren vorzeichenlosen Pendants, nieder. Mit der Verbreitung von 32-Bit-Architekturen hat man hierbei in der Regel die drei Typen gleichermaßen auf die Breite von 32 Bit gesetzt, so dass Daten von Int-Typ, Long-Typ und Zeiger-Typ gleich sind. Dieses nennt man abgekürzt ILP32. Zur Abwärtskompatibilität mit der 16-Bit-Architektur, die meist als IP16 ausgeführt wurde, hatte man teils auch den Int-Typ bei 16-Bit gelassen, genannt LP32, oder den Long-Typ auf doppelte Breite von 64-Bit gesetzt, genannt IP32. Die ersten Versionen von DOS/Windows und Mac-OS arbeiteten mit jener LP32 und 16-Bit „int“, während frühe Ultrix-Versionen mit IP32 und 64-Bit „long“ arbeiteten. Derlei Programmiermodelle haben sich jedoch nicht durchgesetzt – alle heutigen unixartigen 32-Bit-Betriebssysteme drücken die 32-Bit-Architektur in einem ILP32-Typenmodell aus.

Siehe auch[Bearbeiten]