Befehlsformate für verschiedene Rechnerarchitekturen

In dieser Tabelle sind die 4 Standard Befehlsformate moderner 32bit-RISC-Prozessoren aufgeführt.
Ein Teil wurde aus dem RA-Buch von Patterson/Hennessy übernommen.

Zum Vergleich ist auch das Format des neuen INTEL-Itanium Prozessors dargestellt.
Dieser Prozessor ist aber kein reiner RISC-Prozessor sondern beruht auf der neuen INTEL-Architektur (IA-64).
Anstelle der Verarbeitung von einzelnen 32bit-Befehlen, werden dort drei 41bit Befehle zu einer Befehlsanweisung
zusammengefaßt und mit einem zusätzlichen 5bit template-Code ausgestattet, so daß sich ein sog. 128bit "bundle" ergibt.
Hierbei gibt es aber auch nicht nur jeweils einen Formattyp, sondern die Befehlsformate sind an unterschiedliche Bedürfnisse
angepaßt. So gibt es Register-Immediate-Befehle die für unterschiedliche Immediate-Bitlängen ausgelegt sind!

Die Abkürzungen bedeuten:
Op: main opcode
Opx: opcode-extension 
Rd: destination-register 
Rs1: source-register 1
Rs2: source-register 2 
Const: Konstante für immediate oder address.
Die hochgestellten Zahlen geben die Feldlänge in Bits an.
 
 

 
 
 
 

Register-
Register

  31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
DLX
Op6
Rs15
Rs25
Rd5
Opx11
MIPS
Op6
Rs15
Rs25
Rd5
Const5
 
PowerPC
Op6
Rd5
Rs15
Rs25
Opx11
PA-RISC
Op6
Rs15
Rs25
Opx11
Rd5
SPARC
Op2
Rd5
Opx6
Rs15
0
Opx8
Rs25
ALPHA
Op6
Rs15
Rs25
Opx3
0
Opx7
Opx7
                                                                 
                                                                 
  Itanium 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
  Op4 O Op2 O Opx4 Opx3 Rs27 Rs17 Rd7 Opx6
  40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

 
 
 
 

 
 
 
 
 

Register-
Immediate

  31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
DLX
Op6
Rs15
Rd5
Const16
MIPS
Op6
Rs15
Rd5
Const16
PowerPC
Op6
Rd5
Rs15
Const16
PA-RISC
Op6
Rs15
Rs25
Opx6
Const11
SPARC Op2
Rd5
Opx6
Rs15
1
Const13
ALPHA
Op6
Rs15
Const8
0
Opx7
Rd5
                                                                 
                                                                 
  Itanium 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
 
Op4
1
Const9
Const5
Rs2
Const7
Rd7
Opx7
  40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

 
 
 
 

 
 
 
 
 

Branch

  31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
DLX
Op6
Rs15
Rd5
Const16
MIPS
Op6
Rs15
Opx5/Rs25
Const16
PowerPC
Op6
Opx5
Rs15
Const14
Opx2
PA-RISC
Op6
Rs25
Rs15
Opx3
Const11
O C
SPARC Op2
Opx11
Const19
ALPHA
Op6
Rs15
Const21
                                                                 
                                                                 
  Itanium 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
 
Op4
C O Opx2 Const20 O   Opx3 Opx6
  40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

 
 
 
 
 
 

 
 
 
 

Jump/

Call

  31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
DLX
Op6
Const26
MIPS
Op6
Const26
PowerPC
Op6
Const24
Opx2
PA-RISC
Op6
Rs15
Const5
Const14
O C
SPARC Opx2
Const30
ALPHA
Op6
Rs15
Const21
                                                                 
                                                                 
  Itanium 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
 
Op6
C O
Op2
Const20
O
 
Rs13
Opx6
  40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

 
 
 

Links zu weiteren Quellen:



letzte Änderung: 11.5.2000 Kilian Lenz