Word (Computerarchitektur) - Word (computer architecture)

In der Computertechnik ist ein Wort die natürliche Dateneinheit, die von einem bestimmten Prozessordesign verwendet wird. Ein Wort ist ein Datenelement fester Größe , das vom Befehlssatz oder der Hardware des Prozessors als Einheit verarbeitet wird . Die Anzahl der Bits in einem Wort ( Wortgröße , Wortbreite oder Wortlänge ) ist ein wichtiges Merkmal jedes spezifischen Prozessordesigns oder jeder Computerarchitektur .

Die Größe eines Wortes spiegelt sich in vielen Aspekten der Struktur und des Betriebs eines Computers wider; die Mehrheit der Register in einem Prozessor hat normalerweise eine Wortgröße, und das größte Datenelement, das in einer einzigen Operation in den und aus dem Arbeitsspeicher übertragen werden kann, ist in vielen (nicht allen) Architekturen ein Wort. Die größtmögliche Adressgröße , die verwendet wird, um eine Stelle im Speicher zu bezeichnen, ist typischerweise ein Hardware-Wort (hier bedeutet "Hardware-Wort" das natürliche Wort in voller Größe des Prozessors im Gegensatz zu jeder anderen verwendeten Definition).

Dokumentation für Computer mit fester Wortgröße, die üblicherweise Speichergrößen in Wörtern und nicht in Bytes oder Zeichen angegeben. Üblicherweise wurden Begriffe wie Kilowörter (KW) für 1024 Wörter (2 10 ) und Megawörter (MW) für 1.048.576 Wörter (2 20 ) verwendet. Mit der Standardisierung auf 8-Bit-Bytes und Byte-Adressierbarkeit ist die Angabe von Speichergrößen in Bytes, Kilobytes und Megabytes zur Norm geworden.

Einige der frühesten Computer (und auch einige moderne) verwendeten binärcodierte Dezimalzahlen anstelle von reiner Binärzahl , typischerweise mit einer Wortgröße von 10 oder 12 Dezimalstellen , und einige frühe Dezimalcomputer hatten überhaupt keine feste Wortlänge. Frühe Binärsysteme neigten dazu, Wortlängen zu verwenden, die ein Vielfaches von 6 Bit betrugen, wobei das 36-Bit-Wort besonders auf Großrechnern verbreitet war . Die Einführung von ASCII führte zu Systemen mit Wortlängen, die ein Vielfaches von 8 Bit betrugen, wobei 16-Bit-Maschinen in den 1970er Jahren populär waren, bevor sie zu modernen Prozessoren mit 32 oder 64 Bit übergingen. Sonderausführungen wie digitale Signalprozessoren können eine beliebige Wortlänge von 4 bis 80 Bit haben.

Die Größe eines Wortes kann aufgrund der Abwärtskompatibilität mit früheren Computern manchmal von der erwarteten Größe abweichen . Wenn mehrere kompatible Varianten oder eine Prozessorfamilie eine gemeinsame Architektur und einen gemeinsamen Befehlssatz teilen, sich jedoch in ihren Wortgrößen unterscheiden, können ihre Dokumentation und Software notationell komplex werden, um den Unterschied zu berücksichtigen (siehe Größenfamilien unten).

Verwendung von Wörtern

Je nachdem, wie ein Computer organisiert ist, können Wortgrößeneinheiten verwendet werden für:

Festkommazahlen
Halter für Festkomma , normalerweise ganzzahlige , numerische Werte können in einer oder in mehreren verschiedenen Größen erhältlich sein, aber eine der verfügbaren Größen wird fast immer das Wort sein. Die anderen Größen, falls vorhanden, sind wahrscheinlich Vielfache oder Bruchteile der Wortgröße. Die kleineren Größen werden normalerweise nur für eine effiziente Speichernutzung verwendet; Wenn sie in den Prozessor geladen werden, gehen ihre Werte normalerweise in einen größeren, wortgroßen Halter.
Gleitkommazahlen
Halter für numerische Gleitkommawerte sind typischerweise entweder ein Wort oder ein Vielfaches eines Wortes.
Adressen
Halter für Speicheradressen müssen eine Größe haben, die in der Lage ist, den benötigten Wertebereich auszudrücken, aber nicht übermäßig groß sein, daher ist die verwendete Größe oft das Wort, obwohl sie auch ein Vielfaches oder Bruchteil der Wortgröße sein kann.
Register
Prozessorregister werden mit einer Größe entworfen, die für die Art der Daten, die sie enthalten, geeignet ist, zB ganze Zahlen, Gleitkommazahlen oder Adressen. Viele Computerarchitekturen verwenden Allzweckregister , die Daten in mehreren Darstellungen speichern können.
Speicher-Prozessor-Übertragung
Wenn der Prozessor aus dem Speichersubsystem in ein Register liest oder den Wert eines Registers in den Speicher schreibt, ist die übertragene Datenmenge oft ein Wort. Historisch wurde diese Anzahl von Bits, die in einem Zyklus übertragen werden konnten, in einigen Umgebungen (wie dem Bull GAMMA 60  [ fr ] ) auch als Catena bezeichnet . Bei einfachen Speichersubsystemen wird das Wort über den Speicherdatenbus 10 übertragen , der typischerweise eine Wort- oder Halbwortbreite hat. In Speichersubsystemen, die Caches verwenden , ist die Übertragung in Wortgröße diejenige zwischen dem Prozessor und der ersten Cache-Ebene; auf niedrigeren Ebenen der Speicherhierarchie werden normalerweise größere Übertragungen (die ein Vielfaches der Wortgröße sind) verwendet.
Einheit der Adressauflösung
In einer gegebenen Architektur bezeichnen aufeinanderfolgende Adresswerte aufeinanderfolgende Speichereinheiten; diese Einheit ist die Einheit der Adressauflösung. Bei den meisten Computern ist die Einheit entweder ein Zeichen (zB ein Byte) oder ein Wort. (Einige Computer haben Bit-Auflösung verwendet.) Wenn die Einheit ein Wort ist, kann auf eine größere Speichermenge unter Verwendung einer Adresse einer bestimmten Größe auf Kosten der zusätzlichen Komplexität des Zugriffs auf einzelne Zeichen zugegriffen werden. Ist die Einheit hingegen ein Byte, können einzelne Zeichen adressiert (dh während des Speichervorgangs ausgewählt) werden.
Anweisungen
Maschinenbefehle haben normalerweise die Größe des Wortes der Architektur, wie in RISC-Architekturen , oder ein Vielfaches der "char"-Größe, die ein Bruchteil davon ist. Dies ist eine natürliche Wahl, da Befehle und Daten normalerweise dasselbe Speichersubsystem verwenden. In Harvard-Architekturen müssen die Wortgrößen von Befehlen und Daten nicht in Beziehung gesetzt werden, da Befehle und Daten in unterschiedlichen Speichern gespeichert werden; zum Beispiel hatte der Prozessor in der elektronischen Telefonvermittlung 1ESS 37-Bit-Befehle und 23-Bit-Datenwörter.

Wahl der Wortgröße

Wenn eine Computerarchitektur entworfen wird, ist die Wahl einer Wortgröße von wesentlicher Bedeutung. Es gibt Designüberlegungen, die bestimmte Bitgruppengrößen für bestimmte Anwendungen (zB für Adressen) fördern, und diese Überlegungen weisen auf unterschiedliche Größen für verschiedene Anwendungen hin. Jedoch drängen Überlegungen der Wirtschaftlichkeit bei der Konstruktion stark auf eine Größe oder sehr wenige Größen, die durch Vielfache oder Brüche (Untervielfache) auf eine Primärgröße bezogen werden. Diese bevorzugte Größe wird zur Wortgröße der Architektur.

Die Zeichengröße war in der Vergangenheit (Pre-Variable-Size- Zeichencodierung ) einer der Einflüsse auf die Einheit der Adressauflösung und die Wahl der Wortgröße. Vor Mitte der 1960er Jahre wurden Zeichen am häufigsten in sechs Bit gespeichert; dies erlaubte nicht mehr als 64 Zeichen, so dass das Alphabet auf Großbuchstaben beschränkt war. Da es hinsichtlich Zeit und Raum effizient ist, die Wortgröße ein Vielfaches der Zeichengröße zu haben, waren die Wortgrößen in diesem Zeitraum normalerweise Vielfache von 6 Bits (bei binären Maschinen). Eine gängige Wahl war damals das 36-Bit-Wort , das auch eine gute Größe für die numerischen Eigenschaften eines Gleitkommaformats hat.

Nach der Einführung des IBM System/360- Designs, das Acht-Bit-Zeichen verwendete und Kleinbuchstaben unterstützte, wurde die Standardgröße eines Zeichens (oder genauer gesagt, eines Bytes ) zu acht Bit. Danach waren die Wortgrößen natürlich Vielfache von acht Bits, wobei 16, 32 und 64 Bits allgemein verwendet wurden.

Variable Wortarchitekturen

Frühe Maschinenentwürfe enthielten einige , die das verwendeten , was oft als variable Wortlänge bezeichnet wird . Bei dieser Art von Organisation hatte ein numerischer Operand keine feste Länge, sondern sein Ende wurde erkannt, wenn ein Zeichen mit einer speziellen Markierung, oft als Wortmarke bezeichnet , angetroffen wurde. Solche Maschinen verwendeten oft binär codierte Dezimalzahlen für Zahlen. Zu dieser Maschinenklasse gehörten IBM 702 , IBM 705 , IBM 7080 , IBM 7010 , UNIVAC 1050 , IBM 1401 und IBM 1620 .

Die meisten dieser Maschinen arbeiten mit jeweils einer Speichereinheit, und da jeder Befehl oder jedes Datum mehrere Einheiten lang ist, benötigt jeder Befehl mehrere Zyklen, nur um auf den Speicher zuzugreifen. Aus diesem Grund sind diese Maschinen oft recht langsam. Zum Beispiel benötigen Befehlsabrufe auf einem IBM 1620 Modell I 8 Zyklen, nur um die 12 Ziffern des Befehls zu lesen (das Modell II reduzierte dies auf 6 Zyklen oder 4 Zyklen, wenn der Befehl nicht beide Adressfelder benötigte). Die Befehlsausführung benötigte je nach Größe der Operanden eine völlig variable Anzahl von Zyklen.

Wort- und Byte-Adressierung

Das Speichermodell einer Architektur wird stark von der Wortgröße beeinflusst. Insbesondere die Auflösung einer Speicheradresse, also der kleinsten Einheit, die durch eine Adresse bezeichnet werden kann, wurde oft als Wort gewählt. Bei diesem Ansatz, dem Ansatz einer wortadressierbaren Maschine, bezeichnen Adresswerte, die sich um eins unterscheiden, benachbarte Speicherwörter. Dies ist bei Maschinen, die fast immer in Wort- (oder Mehrwort-)Einheiten handeln, natürlich und hat den Vorteil, dass Befehle minimal bemessene Felder verwenden können, um Adressen zu enthalten, was eine kleinere Befehlsgröße oder eine größere Vielfalt von Befehlen zulassen kann.

Wenn die Byte-Verarbeitung einen erheblichen Teil der Arbeitslast ausmachen soll, ist es normalerweise vorteilhafter, das Byte anstelle des Wortes als Einheit der Adressauflösung zu verwenden. Adresswerte, die sich um eins unterscheiden, bezeichnen benachbarte Bytes im Speicher. Dadurch kann ein beliebiges Zeichen innerhalb einer Zeichenkette einfach angesprochen werden. Ein Wort kann immer noch adressiert werden, aber die zu verwendende Adresse erfordert einige Bits mehr als die Wortauflösungsalternative. Die Wortgröße muss in dieser Organisation ein ganzzahliges Vielfaches der Zeichengröße sein. Dieser Adressierungsansatz wurde in IBM 360 verwendet und ist seitdem der gebräuchlichste Ansatz bei Maschinen, die entwickelt wurden.

In einer byteorientierten ( byteadressierbaren ) Maschine ist das Verschieben eines einzelnen Bytes von einem beliebigen Ort an einen anderen typischerweise:

  1. LADEN Sie das Quellbyte
  2. SPEICHERN Sie das Ergebnis wieder im Zielbyte

Auf einzelne Bytes kann auf einer wortorientierten Maschine auf zwei Arten zugegriffen werden. Bytes können durch eine Kombination von Schiebe- und Maskierungsoperationen in Registern manipuliert werden. Das Verschieben eines einzelnen Bytes von einem beliebigen Ort an einen anderen kann Folgendes erfordern:

  1. LADEN Sie das Wort, das das Quellbyte enthält
  2. SHIFT das Quellwort , um das gewünschte Byte an der richtigen Position im Zielwort auszurichten
  3. UND das Quellwort mit einer Maske, um alle außer den gewünschten Bits auf Null zu setzen
  4. LADEN Sie das Wort, das das Zielbyte enthält
  5. UND das Zielwort mit einer Maske zum Nullen des Zielbytes
  6. ODER die Register mit den Quell- und Zielwörtern, um das Quellbyte einzufügen
  7. SPEICHERN Sie das Ergebnis wieder am Zielort

Alternativ implementieren viele wortorientierte Maschinen Byteoperationen mit Befehlen unter Verwendung spezieller Bytezeiger in Registern oder im Speicher. Zum Beispiel enthielt der PDP-10- Bytezeiger die Größe des Bytes in Bits (ermöglicht den Zugriff auf unterschiedlich große Bytes), die Bitposition des Bytes innerhalb des Wortes und die Wortadresse der Daten. Anweisungen könnten den Zeiger automatisch auf das nächste Byte einstellen, zum Beispiel bei Lade- und Einzahlungs-(Speicher-)Operationen.

Zweierpotenzen

Es werden unterschiedliche Speicherkapazitäten verwendet, um Datenwerte mit unterschiedlichen Genauigkeitsgraden zu speichern. Die am häufigsten verwendeten Größen sind normalerweise eine Zweierpotenz Mehrfaches der Einheit der Adressauflösung (Byte oder Wort). Das Umwandeln des Index eines Elements in einem Array in den Speicheradressen-Offset des Elements erfordert dann nur eine Schiebeoperation statt einer Multiplikation. In einigen Fällen kann diese Beziehung auch die Verwendung von Divisionsoperationen vermeiden. Als Ergebnis weisen die meisten modernen Computerdesigns Wortgrößen (und andere Operandengrößen) auf, die das Zweifache der Größe eines Bytes betragen.

Größenfamilien

Da Computerdesigns komplexer geworden sind, hat die zentrale Bedeutung einer einzelnen Wortgröße für eine Architektur abgenommen. Obwohl leistungsfähigere Hardware eine größere Vielfalt an Datengrößen verwenden kann, üben die Marktkräfte Druck aus, die Abwärtskompatibilität aufrechtzuerhalten und gleichzeitig die Prozessorleistung zu erweitern. Infolgedessen muss die möglicherweise zentrale Wortgröße in einem neuen Design als alternative Größe zur ursprünglichen Wortgröße in einem abwärtskompatiblen Design koexistieren. Die ursprüngliche Wortgröße bleibt in zukünftigen Designs verfügbar und bildet die Grundlage einer Größenfamilie.

Mitte der 1970er Jahre entwarf DEC den VAX als 32-Bit-Nachfolger des 16-Bit- PDP-11 . Sie verwendeten Wort für eine 16-Bit-Menge, während sich Langwort auf eine 32-Bit-Menge bezog. Dies stand im Gegensatz zu früheren Maschinen, bei denen die natürliche Einheit der Adressierung des Speichers als Wort bezeichnet wurde , während eine Größe, die ein halbes Wort beträgt, als Halbwort bezeichnet wurde . Passend zu diesem Schema hat ein VAX- Quadword 64 Bit. Sie setzten diese Wort-/Langwort-/Quadwort-Terminologie mit dem 64-Bit- Alpha fort .

Ein weiteres Beispiel ist die x86- Familie, von der Prozessoren mit drei verschiedenen Wortlängen (16-Bit, später 32- und 64-Bit) auf den Markt kamen, wobei Wort weiterhin eine 16-Bit-Menge bezeichnet. Da Software routinemäßig von einer Wortlänge zur nächsten portiert wird , definieren oder verweisen einige APIs und Dokumentationen auf eine ältere (und damit kürzere) Wortlänge als die volle Wortlänge auf der CPU, für die Software kompiliert werden kann. Ähnlich wie Bytes für kleine Zahlen in vielen Programmen verwendet werden, kann ein kürzeres Wort (16 oder 32 Bit) in Kontexten verwendet werden, in denen der Bereich eines breiteren Wortes nicht benötigt wird (insbesondere wenn dies erheblich Stapelplatz oder Cache sparen kann). Speicherplatz). Beispielsweise behält die Windows-API von Microsoft die Programmiersprachendefinition von WORD als 16 Bit bei, obwohl die API auf einem 32- oder 64-Bit-x86-Prozessor verwendet werden kann, wo die Standardwortgröße 32 bzw. 64 Bit betragen würde . Datenstrukturen, die Wörter unterschiedlicher Größe enthalten, beziehen sich auf sie als WORD (16 Bits/2 Bytes), DWORD (32 Bits/4 Bytes) bzw. QWORD (64 Bits/8 Bytes). Ein ähnliches Phänomen hat sich in Intels x86- Assemblersprache entwickelt – aufgrund der Unterstützung verschiedener Größen (und Abwärtskompatibilität) im Befehlssatz tragen einige Befehlsmnemonik "d" oder "q"-Identifikatoren, die "double-", "quad-" bezeichnen. oder "double-quad-", die sich auf die ursprüngliche 16-Bit-Wortgröße der Architektur beziehen.

Im Allgemeinen müssen neue Prozessoren die gleichen Datenwortlängen und virtuellen Adressbreiten wie ein älterer Prozessor verwenden, um mit diesem älteren Prozessor binär kompatibel zu sein.

Oftmals kann sorgfältig geschriebener Quellcode – geschrieben mit Quellcode-Kompatibilität und Software-Portabilität – neu kompiliert werden, um auf einer Vielzahl von Prozessoren zu laufen, sogar auf solchen mit unterschiedlichen Datenwortlängen oder unterschiedlichen Adressbreiten oder beidem.

Tabelle der Wortgrößen

Schlüssel: bit: Bits , d: Dezimalziffern , w : Wortgröße der Architektur, n : variable Größe
Jahr Computer -
Architektur
Wortgröße w Ganzzahlige
Größen
Floating-Point -
Größen
Instruction
Größen
Einheit
Adressauflösung
Zeichengröße
1837 Babbage
Analytical Engine
50 d w Fünf verschiedene Karten wurden für verschiedene Funktionen verwendet, genaue Kartengröße nicht bekannt. w
1941 Zuse Z3 22 bit w 8 Bit w
1942 ABC 50 Bit w
1944 Harvard Mark I 23 Tage w 24 Bit
1946
(1948)
{1953}
ENIAC
(mit Panel #16)
{mit Panel #26}
10 Tage w , 2 w
(w)
{w}

(2 d, 4 d, 6 d, 8 d)
{2 d, 4 d, 6 d, 8 d}


{w}
1948 Manchester Baby 32-Bit w w w
1951 UNIVAC I 12 Tage w 12 w w 1 Tag
1952 IAS-Maschine 40 Bit w 12 w w 5 bit
1952 Schneller Universal-Digitalcomputer M-2 34-Bit w? w 34 Bit = 4-Bit-Opcode plus 3×10-Bit-Adresse 10 Bit
1952 IBM 701 36 Bit 12 w , w 12 w 12 w , w 6 Bit
1952 UNIVAC 60 n d 1 d, ... 10 d 2 Tage, 3 Tage
1952 ARRA I 30 Bit w w w 5 bit
1953 IBM 702 n d 0 d, ... 511 d 5 Tage D 1 Tag
1953 UNIVAC 120 n d 1 d, ... 10 d 2 Tage, 3 Tage
1953 ARRA II 30 Bit w 2 w 12 w w 5 bit
1954
(1955)
IBM 650
(mit IBM 653 )
10 Tage w
(w)
w w 2 Tage
1954 IBM 704 36 Bit w w w w 6 Bit
1954 IBM 705 n d 0 d, ... 255 d 5 Tage D 1 Tag
1954 IBM NORC 16 Tage w w , 2 w w w
1956 IBM 305 n d 1 d, ... 100 d 10 Tage D 1 Tag
1956 ARMAC 34-Bit w w 12 w w 5 Bit, 6 Bit
1957 Autonetics Recomp I 40 Bit w , 79 Bit, 8 d, 15 d 12 w 12 w , w 5 bit
1958 UNIVAC II 12 Tage w 12 w w 1 Tag
1958 WEISE 32-Bit 12 w w w 6 Bit
1958 Autonetics Recomp II 40 Bit w , 79 Bit, 8 d, 15 d 2 w 12 w 12 w , w 5 bit
1958 Setun Trit (~9,5 Bit) bis zu 6  Tryte bis zu 3 Versuche 4 trit ?
1958 Electrologica X1 27 Bit w 2 w w w 5 Bit, 6 Bit
1959 IBM 1401 n d 1 d, ... 1 d, 2 d, 4 d, 5 d, 7 d, 8 d D 1 Tag
1959
(ungefähr)
IBM 1620 n d 2 Tage, ...
(4 d, ... 102 d)
12 Tage D 2 Tage
1960 LARC 12 Tage w , 2 w w , 2 w w w 2 Tage
1960 CDC 1604 48 Bit w w 12 w w 6 Bit
1960 IBM 1410 n d 1 d, ... 1 d, 2 d, 6 d, 7 d, 11 d, 12 d D 1 Tag
1960 IBM 7070 10 Tage w w w w , d 2 Tage
1960 PDP-1 18-Bit w w w 6 Bit
1960 Elliott 803 39 Bit
1961 IBM 7030
(Stretch)
64-Bit 1 Bit, ... 64 Bit,
1 d, ... 16 d
w 12 w , w b, 12 w , w 1 Bit, ... 8 Bit
1961 IBM 7080 n d 0 d, ... 255 d 5 Tage D 1 Tag
1962 GE-6xx 36 Bit w , 2 w w , 2 w , 80 bit w w 6-Bit, 9-Bit
1962 UNIVAC III 25 Bit w , 2 w , 3 w , 4 w , 6 d, 12 d w w 6 Bit
1962 Autonetics D-17B
Minuteman I Führungscomputer
27 Bit 11 Bit, 24 Bit 24 Bit w
1962 UNIVAC 1107 36 Bit 16 w , 13 w , 12 w , w w w w 6 Bit
1962 IBM 7010 n d 1 d, ... 1 d, 2 d, 6 d, 7 d, 11 d, 12 d D 1 Tag
1962 IBM 7094 36 Bit w w , 2 w w w 6 Bit
1962 SDS 9-Serie 24 Bit w 2 w w w
1963
(1966)
Apollo Führungscomputer 15 bit w w , 2 w w
1963 Saturn-Trägerrakete Digital Computer 26-Bit w 13 Bit w
1964/1966 PDP-6 / PDP-10 36 Bit w w , 2 w w w 6 Bit, 9 Bit (typisch)
1964 Titan 48 Bit w w w w w
1964 CDC 6600 60 Bit w w 14 W , 12 W w 6 Bit
1964 Autonetics D-37C
Minuteman II Führungscomputer
27 Bit 11 Bit, 24 Bit 24 Bit w 4 Bit, 5 Bit
1965 Gemini-Führungscomputer 39 Bit 26-Bit 13 Bit 13-Bit, 26 -Bit
1965 IBM 360 32-Bit 12 w , w ,
1 d, ... 16 d
w , 2 w 12 w , w , 1 12 w 8 Bit 8 Bit
1965 UNIVAC 1108 36 Bit 16 W , 14 W , 13 W , 12 W , W , 2 W w , 2 w w w 6-Bit, 9-Bit
1965 PDP-8 12 bit w w w 8 Bit
1965 Electrologica X8 27 Bit w 2 w w w 6-Bit, 7-Bit
1966 SDB Sigma 7 32-Bit 12 w , w w , 2 w w 8 Bit 8 Bit
1969 Vierphasensysteme AL1 8 Bit w ? ? ?
1970 MP944 20 Bit w ? ? ?
1970 PDP-11 16-Bit w 2 Watt , 4 Watt w , 2 w , 3 w 8 Bit 8 Bit
1971 TMS1802NC 4 Bit w ? ?
1971 Intel 4004 4 Bit w , d 2 Watt , 4 Watt w
1972 Intel 8008 8 Bit w , 2 d w , 2 w , 3 w w 8 Bit
1972 Calcomp 900 9 Bit w w , 2 w w 8 Bit
1974 Intel 8080 8 Bit w , 2 w , 2 d w , 2 w , 3 w w 8 Bit
1975 ILLIAC IV 64-Bit w w , 12 w w w
1975 Motorola 6800 8 Bit w , 2 d w , 2 w , 3 w w 8 Bit
1975 MOS-Tech. 6501
MOS-Tech. 6502
8 Bit w , 2 d w , 2 w , 3 w w 8 Bit
1976 Cray-1 64-Bit 24 Bit, w w 14 W , 12 W w 8 Bit
1976 Zilog Z80 8 Bit w , 2 w , 2 d w , 2 w , 3 w , 4 w , 5 w w 8 Bit
1978
(1980)
16-Bit x86 ( Intel 8086 )
(mit Gleitkomma: Intel 8087 )
16-Bit 12 w , w , 2 d
(2 W , 4 W , 5 W , 17 T)
12 w , w , ... 7 w 8 Bit 8 Bit
1978 Mehrwertsteuer 32-Bit 14 w , 12 w , w , 1 d, ... 31 d, 1 Bit, ... 32 Bit w , 2 w 14 W , ... 14 14 W 8 Bit 8 Bit
1979
(1984)
Motorola 68000-Serie
(mit Gleitkomma)
32-Bit 14 w , 12 w , w , 2 d
( w , 2 w , 2 12 w )
12 w , w , ... 7 12 w 8 Bit 8 Bit
1985 IA-32 ( Intel 80386 ) (mit Gleitkomma) 32-Bit 14 w , 12 w , w
( w , 2 w , 80 bit)
8 bit, ... 120 bit
14 w ... 3 34 w
8 Bit 8 Bit
1985 ARMv1 32-Bit 14 w , w w 8 Bit 8 Bit
1985 MIPS 32-Bit 14 w , 12 w , w w , 2 w w 8 Bit 8 Bit
1991 Cray C90 64-Bit 32 Bit, w w 14 W , 12 W , 48 Bit w 8 Bit
1992 Alpha 64-Bit 8 Bit, 14 w , 12 w , w 12 w , w 12 w 8 Bit 8 Bit
1992 PowerPC 32-Bit 14 w , 12 w , w w , 2 w w 8 Bit 8 Bit
1996 ARMv4
(mit Daumen )
32-Bit 14 w , 12 w , w w
( 12 w , w )
8 Bit 8 Bit
2000 IBM z/Architektur
(mit Vektoreinrichtung)
64-Bit 14 w , 12 w , w
1 d, ... 31 d
12 w , w , 2 w 14 W , 12 W , 34 W 8 Bit 8-Bit, UTF-16 , UTF-32
2001 IA-64 64-Bit 8 Bit, 14 w , 12 w , w 12 w , w 41 Bit 8 Bit 8 Bit
2001 ARMv6
(mit VFP)
32-Bit 8 Bit, 12 w , w
(w, 2w)
12 w , w 8 Bit 8 Bit
2003 x86-64 64-Bit 8 Bit, 14 w , 12 w , w 12 w , w , 80 Bit 8 Bit, ... 120 Bit 8 Bit 8 Bit
2013 ARMv8-A und ARMv9-A 64-Bit 8 Bit, 14 w , 12 w , w 12 w , w 12 w 8 Bit 8 Bit
Jahr Computer -
Architektur
Wortgröße w Ganzzahlige
Größen
Floating-Point -
Größen
Instruction
Größen
Einheit
Adressauflösung
Zeichengröße
Schlüssel: Bit: Bits, d: Dezimalstellen, w : Wortgröße der Architektur, n : Variable Größe

Siehe auch

Verweise