High Level Assembler - Opcodes overzicht

De eerste tabel hieronder toont de opcodes in de originele S/360 IBM mainframe processor implementatie, inclusief alle vervallen instructies en een selectie van de instructies die later zijn toegevoegd. De andere twee tabellen tonen geselecteerde opcodes voor thans gangbare mainframe processoren.
De tabellen zijn van kleuren voorzien om zichtbaar te maken hoe het ontwerp is veranderd en - bovenal - de orthogonaliteit van het basis-ontwerp, hetgeen zich uit in zowel horizontale als verticale stratificatie.
Een legenda vindt u onder elke tabel.

Zowel selectie als categorie-indeling (in de tweede en derde tabel) zijn van de hand van de auteur; geen enkele betrokkenheid van IBM wordt op welke wijze dan ook geïmpliceerd. De selectie van opcodes is hetzelfde voor alle drie de tabellen, behalve dan dat de eerste tabel enkele opcodes bevat, welke in de andere twee zijn weggelaten. De niet getoonde opcodes zijn echter met name die, welke zelden gebruikt worden en bovendien niet goed passen in de horizontale stratificatie. Zodoende zijn de uitzonderingen - ontstaan door toevoegingen na de originele implementatie van het ontwerp uit de vroege 1960er jaren - veel beter zichtbaar in de verticale stratificatie.

De eerste tabel toont de complete originele set , inclusief de instructies die later zijn vervallen. Zij toont ook alle instructies die getoont worden in de andere twee tabellen.

De tweede tabel toont de horizontale stratificatie; deze organiseert de instructies voornamelijk naar het type van de data. Het is duidelijk zichtbaar, dat veel van de nieuwere instructies zijn toegevoegd op plaatsen die in overeenkomst waren met de bestaande stratificatie. Sommige instructies lijken echter op willekeurige posities geplaatst te zijn. Niet veel van deze uitzonderingen zijn zichtbaar in de tabel; dit resulteert (voor een groot deel) uit de manier waarop ik de tabel heb geconstrueerd.

De derde tabel toont de verticale stratificatie ; deze organiseert de instructies voornamelijk naar het soort bewerking. De achtergrond kleuren coderen voor het soort bewerking, de kleur van de tekst verzorgt een nadere verbijzondering. Een witte achtergrond bijvoorbeeld geeft alle bewerkingen aan welke gegevens uit het geheugen ophalen. Hierbij wordt voor alle load-negative opcodes groene tekst gebruikt, terwijl voor load-positive opcodes zwarte tekst wordt gebruikt, etc.

In de derde tabel is veel beter zichtbaar dat IBM gepoogd heeft nieuwe opcodes op een logische plek in te voegen, indien de betreffende plek nog beschikbaar was. Desalniettemin zijn er nogal wat nieuwere opcodes op schijnbaar willekeurige posities beland.

De tabel toont een aantal interessante details van de implementatie. Ten eerste kunnen we zien dat een aantal bewerkingen steeds een aantal regels overslaan. Bijvoorbeeld de logische and-instructies vinden we op regels 1, 5, 9, en D. Dat wil zeggen: er zitten steeds vier regels tussen.

Het tweede detail is dat we in deze tabel de horizontale stratificatie nog deels terug zien komen, ondanks het feit dat de tabel is opgezet om juist de verticale stratificatie zichtbaar te maken. Zie met name de branch-on-index en de schuif-bewerkinge op regel 8.

Originele Implementatie.

  0 1 2 3 4 5 6 7 8 9 A B C D E F
0         SPM BALR BCTR BCR SSK ISK SVC BSM BASSM BASR MVCL CLCL
1 LPR LNR LTR LCR NR CLR OR XR LR CR AR SR MR DR ALR SLR
2 LPDR LNDR LTDR LCDR HDR LDXR MXR MXDR LDR CDR ADR SDR MDR DDR AWR SWR
3 LPER LNER LTER LCER HER LEDR AXR SXR LER CER AER SER MER DER AUR SUR
4 STH LA STC IC EX BAL BCT BC LH CH AH SH MH BAS CVD CVB
5 ST LAE     N CL O X L C A S M D AL SL
6 STD             MXD LD CD AD SD MD DD AW SW
7 STE MS             LE CE AE SE ME DE AU SU
8 SSM   LPSW DIAG WRD
BRXH
RDD
BRXLE
BXH BXLE SRL SLL SRA SLA SRDL SLDL SRDA SLDA
9 STM TM MVI TS NI CLI OI XI LM   LAM STAM SIO TIO HIO TCH
A                 MVCLE CLCLE           MC
B   LRA         STCTL LCTL     CS CDS   CLM STCM ICM
C                                
D   MVN MVC MVZ NC CLC OC XC   MVCK MVCP MVCS TR TRT ED EDMK
E   PKU UNPKU           MVCIN PKA UNPKA       PLO LMD
F SRP MVO PACK UNPK         ZAP CP AP SP MP DP    

Legenda

Zwart zonder tekst
Niet toegewezen
Blauw met witte tekst
Instructies in de originele set, nog steeds geldig
Rood met zwarte tekst
Instructies in de originele set, niet langer geldig
Geel met zwarte tekst
Nieuwe instructies, niet in de originele set

Horizontale Stratificatie.

  0 1 2 3 4 5 6 7 8 9 A B C D E F
0         SPM BALR BCTR BCR     SVC BSM BASSM BASR MVCL CLCL
1 LPR LNR LTR LCR NR CLR OR XR LR CR AR SR MR DR ALR SLR
2 LPDR LNDR LTDR LCDR HDR LDXR MXR MXDR LDR CDR ADR SDR MDR DDR AWR SWR
3 LPER LNER LTER LCER HER LEDR AXR SXR LER CER AER SER MER DER AUR SUR
4 STH LA STC IC EX BAL BCT BC LH CH AH SH MH BAS CVD CVB
5 ST LAE     N CL O X L C A S M D AL SL
6 STD             MXD LD CD AD SD MD DD AW SW
7 STE MS             LE CE AE SE ME DE AU SU
8         BRXH BRXLE BXH BXLE SRL SLL SRA SLA SRDL SLDL SRDA SLDA
9 STM TM MVI TS NI CLI OI XI LM   LAM STAM        
A                 MVCLE CLCLE           MC
B   LRA         STCTL LCTL     CS CDS   CLM STCM ICM
C                                
D   MVN MVC MVZ NC CLC OC XC   MVCK MVCP MVCS TR TRT ED EDMK
E   PKU UNPKU           MVCIN PKA UNPKA       PLO LMD
F SRP MVO PACK UNPK         ZAP CP AP SP MP DP    

Legenda

Zwart zonder tekst
Niet toegewezen / Nietgetoond
Blauw met zwarte tekst
Verplaatsen van gegevens
Bruin met zwarte tekst
Boolean logica
Groen met zwarte tekst
Drijvende komman bewerkingen
Grijs met zwarte tekst
Bewerkingen op character data
Paars met zwarte tekst
Bit bewerkingen
Rose met zwarte tekst
Programma logica
Rood met zwarte tekst
Packed-decimal bewerkingen
Geel met zwarte tekst
Rekenen met gehele getallen
Wit met zwarte tekst
Overige bewerkingen

Verticale Stratificatie.

  0 1 2 3 4 5 6 7 8 9 A B C D E F
0         SPM BALR BCTR BCR     SVC BSM BASSM BASR MVCL CLCL
1 LPR LNR LTR LCR NR CLR OR XR LR CR AR SR MR DR ALR SLR
2 LPDR LNDR LTDR LCDR HDR LDXR MXR MXDR LDR CDR ADR SDR MDR DDR AWR SWR
3 LPER LNER LTER LCER HER LEDR AXR SXR LER CER AER SER MER DER AUR SUR
4 STH LA STC IC EX BAL BCT BC LH CH AH SH MH BAS CVD CVB
5 ST LAE     N CL O X L C A S M D AL SL
6 STD             MXD LD CD AD SD MD DD AW SW
7 STE MS             LE CE AE SE ME DE AU SU
8         BRXH BRXLE BXH BXLE SRL SLL SRA SLA SRDL SLDL SRDA SLDA
9 STM TM MVI TS NI CLI OI XI LM   LAM STAM        
A                 MVCLE CLCLE           MC
B   LRA         STCTL LCTL     CS CDS   CLM STCM ICM
C                                
D   MVN MVC MVZ NC CLC OC XC   MVCK MVCP MVCS TR TRT ED EDMK
E   PKU UNPKU           MVCIN PKA UNPKA       PLO LMD
F SRP MVO PACK UNPK         ZAP CP AP SP MP DP    

Legenda

Zwart zonder tekst
Niet toegewezen / Niet getoond
Groen met zwarte tekst
Bewerkingen die gegeven verplaatsen
Grijs met rode tekst
Bewerkingen die gegevens opslaan in het geheugen
Rose achtergrond
Bewerkingen op bits:
Groene tekst
Bitwise and bewerkingen
Zwarte tekst
Bitwise or (inclusief) bewerkingen
Blauwe tekst
Bitwise exclusive-or bewerkingen
Rode achtergrond
Rekenkundige bewerkingen:
Zwarte tekst
Optel-bewerkingen
Witte tekst
Aftrek-bewerkingen
Blauwe tekst
Vermenigvuldigings-bewerkingen
Gele tekst
Deel-bewerkingen
Groene tekst
Halverings-bewerkingen
Witte achtergrond
Bewerkingen die gegevens laden:
Groene tekst
Load positive bewerkingen
Zwarte tekst
Load negative bewerkingen
Gele tekst
Load and test bewerkingen
Blauwe tekst
Load complement bewerkingen
Rode tekst
Load bewerkingen
Paarse tekst
Load adres bewerkingen
Gele achtergrond
Bewerkingen die gegevens vergelijken:
Zwarte tekst
Vergelijkings-bewerkingen
Rode tekst
Logische vergelijkings-bewerkingen
Blauwe achtergrond
"Overige" bewerkingen:
Witte tekst
Sprong-opdrachten
Rode tekst
Sschuif-bewerkingen
Zwarte tekst
Alle overige bewerkingen

 

Deze site is aangesloten bij WebRing.
Bekijkt u gerust de lijst van mainframe-gerelateerde sites.
Rennende
    Tyrannosaurus Rex Dino's zijn niet dood. Ze zijn gezond en wel en leven in computer-centra overal om ons heen. Zij spreken in tongen en doen wonderbare magie met computers. Pas op voor de dino! En voor het geval u zit te wachten op het definitieve einde van deze dino's: onthoud dat dino's de wereld 155 miljoen jaren hebben geregeerd!
Dino's en andere anachronismen
[ Aanmelden | Ring Overzicht | Willekeurig | << Vorige | Volgende >> ]
 

Naar de originele instructie set.
Naar de horizontale stratificatie.
Naar de verticale stratificatie.

Naar de Nederlands-talige homepage.
Naar de algemene homepage.



Hieronder vindt u het logo van onze sponsor en logos van web-standaarden waaraan deze web-pagina voldoet.