[Next] [Next Section] [Up] [Previous]

Operate Instructions

The instructions to be described on this page have the formats, taken from the main illustration of instruction formats on the first page of this section, shown in this diagram:

As well, the 33-bit alternate instructions include memory-to-register operate instructions, which are also listed below.


The opcodes for these instructions are:

Three-Address   Two-Address     33-bit          
                                Memory-Reference   
                                
156000 xxxxxx   157000 000xxx   00xxx0 xxxxxx      SWB     Swap Byte
156002 xxxxxx   157000 004xxx   00xxx1 xxxxxx      CB      Compare Byte
156010 xxxxxx   157000 010xxx   00xxx2 xxxxxx      LB      Load Byte
                                00xxx3 xxxxxx      STB     Store Byte
156020 xxxxxx   157000 020xxx   01xxx0 xxxxxx      AB      Add Byte
156022 xxxxxx   157000 024xxx   01xxx1 xxxxxx      SB      Subtract Byte
                                                   
156040 xxxxxx   157000 040xxx   02xxx0 xxxxxx      IB      Insert Byte
                                                   
156050 xxxxxx   157000 050xxx   02xxx2 xxxxxx      ULB     Unsigned Load Byte
156052 xxxxxx   157000 054xxx   02xxx3 xxxxxx      XB      Exclusive OR Byte
156060 xxxxxx   157000 060xxx   03xxx0 xxxxxx      NB      AND Byte
156062 xxxxxx   157000 064xxx   03xxx1 xxxxxx      OB      OR Byte
                                                   
156100 xxxxxx   157000 100xxx   04xxx0 xxxxxx      SWH     Swap Halfword
156102 xxxxxx   157000 104xxx   04xxx1 xxxxxx      CH      Compare Halfword
156110 xxxxxx   157000 110xxx   04xxx2 xxxxxx      LH      Load Halfword
                                04xxx3 xxxxxx      STH     Store Halfword
156120 xxxxxx   157000 120xxx   05xxx0 xxxxxx      AH      Add Halfword
156122 xxxxxx   157000 124xxx   05xxx1 xxxxxx      SH      Subtract Halfword
156130 xxxxxx   157000 130xxx   05xxx2 xxxxxx      MH      Multiply Halfword
156132 xxxxxx   157000 134xxx   05xxx3 xxxxxx      DH      Divide Halfword
                                                   
156140 xxxxxx   157000 140xxx   06xxx0 xxxxxx      IH      Insert Halfword
                                                      
156150 xxxxxx   157000 150xxx   06xxx2 xxxxxx      ULH     Unsigned Load Halfword
156152 xxxxxx   157000 154xxx   06xxx3 xxxxxx      XH      Exclusive OR Halfword
156160 xxxxxx   157000 160xxx   07xxx0 xxxxxx      NH      AND Halfword
156162 xxxxxx   157000 164xxx   07xxx1 xxxxxx      OH      OR Halfword
156170 xxxxxx   157000 170xxx   07xxx2 xxxxxx      MEH     Multiply Extensibly Halfword
156172 xxxxxx   157000 174xxx   07xxx3 xxxxxx      DEH     Divide Extensibly Halfword
                                                   
156200 xxxxxx   157001 000xxx   10xxx0 xxxxxx      SW      Swap
156202 xxxxxx   157001 004xxx   10xxx1 xxxxxx      C       Compare
156210 xxxxxx   157001 010xxx   10xxx2 xxxxxx      L       Load
                                10xxx3 xxxxxx      ST      Store
156220 xxxxxx   157001 020xxx   11xxx0 xxxxxx      A       Add
156222 xxxxxx   157001 024xxx   11xxx1 xxxxxx      S       Subtract
156230 xxxxxx   157001 030xxx   11xxx2 xxxxxx      M       Multiply
156232 xxxxxx   157001 034xxx   11xxx3 xxxxxx      D       Divide
                                                   
156240 xxxxxx   157001 040xxx   12xxx0 xxxxxx      I       Insert
                                                   
156250 xxxxxx   157001 050xxx   12xxx2 xxxxxx      UL      Unsigned Load
156252 xxxxxx   157001 054xxx   12xxx3 xxxxxx      X       Exclusive OR
156260 xxxxxx   157001 060xxx   13xxx0 xxxxxx      N       AND
156262 xxxxxx   157001 064xxx   13xxx1 xxxxxx      O       OR
156270 xxxxxx   157001 070xxx   13xxx2 xxxxxx      ME      Multiply Extensibly
156272 xxxxxx   157001 074xxx   13xxx3 xxxxxx      DE      Divide Extensibly
                                                   
156300 xxxxxx   157001 100xxx   14xxx0 xxxxxx      SWL     Swap Long
156302 xxxxxx   157001 104xxx   14xxx1 xxxxxx      CL      Compare Long
156310 xxxxxx   157001 110xxx   14xxx2 xxxxxx      LL      Load Long
                                14xxx3 xxxxxx      STL     Store Long
156320 xxxxxx   157001 120xxx   15xxx0 xxxxxx      AL      Add Long
156322 xxxxxx   157001 124xxx   15xxx1 xxxxxx      SL      Subtract Long
156330 xxxxxx   157001 130xxx   15xxx2 xxxxxx      ML      Multiply Long
156332 xxxxxx   157001 134xxx   15xxx3 xxxxxx      DL      Divide Long
                                                   
156352 xxxxxx   157001 154xxx   16xxx3 xxxxxx      XL      Exclusive OR Long
156360 xxxxxx   157001 160xxx   17xxx0 xxxxxx      NL      AND Long
156362 xxxxxx   157001 164xxx   17xxx1 xxxxxx      OL      OR Long
156370 xxxxxx   157001 170xxx   17xxx2 xxxxxx      MEL     Multiply Extensibly Long
156372 xxxxxx   157001 174xxx   17xxx3 xxxxxx      DEL     Divide Extensibly Long                               
                                
156400 xxxxxx   157002 000xxx   20xxx0 xxxxxx      SWM     Swap Medium
156402 xxxxxx   157002 004xxx   20xxx1 xxxxxx      CM      Compare Medium
156410 xxxxxx   157002 010xxx   20xxx2 xxxxxx      LM      Load Medium
                                20xxx3 xxxxxx      STM     Store Medium
156420 xxxxxx   157002 020xxx   21xxx0 xxxxxx      AM      Add Medium
156422 xxxxxx   157002 024xxx   21xxx1 xxxxxx      SM      Subtract Medium
156430 xxxxxx   157002 030xxx   21xxx2 xxxxxx      MM      Multiply Medium
156432 xxxxxx   157002 034xxx   21xxx3 xxxxxx      DM      Divide Medium
                                                   
156440 xxxxxx   157002 040xxx   22xxx0 xxxxxx      SWF     Swap Floating
156442 xxxxxx   157002 044xxx   22xxx1 xxxxxx      CF      Compare Floating
156450 xxxxxx   157002 050xxx   22xxx2 xxxxxx      LF      Load Floating
                                22xxx3 xxxxxx      STF     Store Floating
156460 xxxxxx   157002 060xxx   23xxx0 xxxxxx      AF      Add Floating
156462 xxxxxx   157002 064xxx   23xxx1 xxxxxx      SF      Subtract Floating
156470 xxxxxx   157002 070xxx   23xxx2 xxxxxx      MF      Multiply Floating
156472 xxxxxx   157002 074xxx   23xxx3 xxxxxx      DF      Divide Floating
                                                   
156500 xxxxxx   157002 100xxx   24xxx0 xxxxxx      SWD     Swap Double
156502 xxxxxx   157002 104xxx   24xxx1 xxxxxx      CD      Compare Double
156510 xxxxxx   157002 110xxx   24xxx2 xxxxxx      LD      Load Double
                                24xxx3 xxxxxx      STD     Store Double
156520 xxxxxx   157002 120xxx   25xxx0 xxxxxx      AD      Add Double
156522 xxxxxx   157002 124xxx   25xxx1 xxxxxx      SD      Subtract Double
156530 xxxxxx   157002 130xxx   25xxx2 xxxxxx      MD      Multiply Double
156532 xxxxxx   157002 134xxx   25xxx3 xxxxxx      DD      Double
                                                   
156540 xxxxxx   157002 140xxx   26xxx0 xxxxxx      SWQ     Swap Quad
156542 xxxxxx   157002 144xxx   26xxx1 xxxxxx      CQ      Compare Quad
156550 xxxxxx   157002 150xxx   26xxx2 xxxxxx      LQ      Load Quad
                                26xxx3 xxxxxx      STQ     Store Quad
156560 xxxxxx   157002 160xxx   27xxx0 xxxxxx      AQ      Add Quad
156562 xxxxxx   157002 164xxx   27xxx1 xxxxxx      SQ      Subtract Quad
156570 xxxxxx   157002 170xxx   27xxx2 xxxxxx      MQ      Multiply Quad
156572 xxxxxx   157002 174xxx   27xxx3 xxxxxx      DQ      Divide Quad

Most of these operations were defined on the page concerning 17-bit and 15-bit instructions.

Subsequent pages will give opcodes for additional instructions with these formats, for performing operations on data types other than two's complement binary integers and IEEE 754 (or similar, in the case of the Medium length) floating point.


[Next] [Next Section] [Up] [Previous]