× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Here is an MI Instruction Set Table. It does not cover some of the newest
operations, and some older ones may been removed. Copy the text to
the clipboard, then paste it into Notepad or use a fixed format font.

Due to the size of the table it is posted in two parts.
Here is part 1:

.----------.-------------------------.--------------------------------------
-.
| OPCODE   | Name                    | Operands and Conditions
|
|----------+-------------------------+--------------------------------------
-|
| ADDLC    | Add Logical Character   | Sum          CHARVF
|
|   IBS    |                         | Addend 1     CHARF
|
|          |                         | Addend 2     CHARF
|
|          |                         | All same length <= 256              ?
|
|   4 ext  |                         | ZNTC NTZNTC ZC NTZC
|
|----------+-------------------------+--------------------------------------
-|
| ADDN     | Add Numeric             | Sum          NUMV
|
|   IBSR   |                         | Addend 1     NUM
|
|          |                         | Addend 2     NUM
|
|   4 ext  |                         | POS NEG ZER NAN
|
|----------+-------------------------+--------------------------------------
-|
| AND      | And Bytes               | Result       CHARV                 S0
|
|   IBS    |                         | Source 1     CHAR                  S0
|
|          |                         | Source 2     CHAR                  S0
|
|          |                         | Longer of 2 sources, then place in
|
|          |                         | result, pad X'00' or truncate
|
|   2 ext  |                         | ZER NZER
|
|----------+-------------------------+--------------------------------------
-|
| B        | Branch                  | Target       BP, INSPTR, IDL elem
|
|----------+-------------------------+--------------------------------------
-|
| CIPHER   | Cipher                  | Result       SPCPTR
|
|          |                         | Control      CHAR(32)V
|
|          |                         | Source       SPCPTR
|
|----------+-------------------------+--------------------------------------
-|
| CIPHERKY | Cipher Key              | Result       CHAR(8)V
|
|          |                         | Control      CHAR(64)V
|
|          |                         | Source       CHAR(8)
|
|----------+-------------------------+--------------------------------------
-|
| CMPBLA   | Compare Bytes Left-     | Compare 1    CHAR, NUM             S0
|
|   IB req | Adjusted                | Compare 2    CHAR, NUM             S0
|
|          |                         | Target(s)
|
|          |                         | Shorter of 2 compare operands
|
|          |                         | Stops on 1st unequal byte
|
|   3 ext  |                         | HI LO EQ
|
|----------+-------------------------+--------------------------------------
-|
| CMPBLAP  | Compare Bytes Left-     | Compare 1    CHAR, NUM             S0
|
|   IB req | Adjusted with Pad       | Compare 2    CHAR, NUM             S0
|
|          |                         | Pad          CHAR(1), NUM(1)
|
|          |                         | Target(s)
|
|          |                         | Shorter of 2 compare operands
|
|          |                         | Stops on 1st unequal byte
|
|   3 ext  |                         | HI LO EQ
|
|----------+-------------------------+--------------------------------------
-|
| CMPBRA   | Compare Bytes Right-    | Compare 1    CHAR, NUM             S0
|
|   IB req | Adjusted                | Compare 2    CHAR, NUM             S0
|
|          |                         | Target(s)
|
|          |                         | Shorter of 2 compare operands
|
|          |                         | Stops on 1st unequal byte
|
|   3 ext  |                         | HI LO EQ
|
|----------+-------------------------+--------------------------------------
-|
| CMPBRAP  | Compare Bytes Right-    | Compare 1    CHAR, NUM             S0
|
|   IB req | Adjusted with Pad       | Compare 2    CHAR, NUM             S0
|
|          |                         | Pad          CHAR(1), NUM(1)
|
|          |                         | Target(s)
|
|          |                         | Shorter of 2 compare operands
|
|          |                         | Stops on 1st unequal byte
|
|   3 ext  |                         | HI LO EQ
|
|----------+-------------------------+--------------------------------------
-|
| CMPNV    | Compare Numeric Values  | Compare 1    NUM
|
|   IB req |                         | Compare 2    NUM
|
|          |                         | Target(s)
|
|   4 ext  |                         | HI LO EQ UNOR
|
|----------+-------------------------+--------------------------------------
-|
| CAI      | Compute Array Index     | Index        BIN(2)V
|
|          |                         | Subscript A  BIN(2)
|
|          |                         | Subscript B  BIN(2)
|
|          |                         | Dimension    BIN(2)C, IMM(2)
|
|----------+-------------------------+--------------------------------------
-|
| CMF1     | Compute Mathematical    | Result       NUMV
|
|   IB     | Function using 1 Input  | Control      CHAR(2)
|
|          |                         | Source       NUM
|
|?  2 ext  |                         | POS NEG ZER NAN
|
|----------+-------------------------+--------------------------------------
-|
| CMF2     | Compute Mathematical    | Result       NUMV
|
|   IB     | Function using 2 Inputs | Control      CHAR(2)
|
|          |                         | Source 1     NUM
|
|          |                         | Source 2     NUM
|
|   4 ext  |                         | POS NEG ZER NAN
|
|----------+-------------------------+--------------------------------------
-|
| CAT      | Concatenate             | Result       CHARV                 S0
|
|          |                         | Source 1     CHAR                  S0
|
|          |                         | Source 2     CHAR                  S0
|
|          |                         | Length of result, pad X'40' or
|
|          |                         | truncate
|
|----------+-------------------------+--------------------------------------
-|
| CVTBC    | Convert BSC to          | Result       CHARV
|
|   IB     | Characters              | Control      CHAR(3)VF
|
|          |                         | Source       CHAR
|
|   3 ext  |                         | CR SE TR
|
|----------+-------------------------+--------------------------------------
-|
| CVTCB    | Convert Characters to   | Result       CHARV
|
|   IB     | BSC                     | Control      CHAR(3)VF
|
|          |                         | Source       CHAR
|
|   2 ext  |                         | SE RO
|
|----------+-------------------------+--------------------------------------
-|
| CVTCH    | Convert Characters to   | Result       CHARV                 S0
|
|          | HEX                     | Source       CHAR  [0-9A-F]        S0
|
|          |                         | Length of result, pad X'00'
|
|----------+-------------------------+--------------------------------------
-|
| CVTCM    | Convert Characters to   | Result       CHARV
|
|   IB     | Multi-leaving Remote    | Control      CHAR(13)VF
|
|          | Job Entry Format        | Source       CHAR
|
|   2 ext  |                         | SE RO
|
|----------+-------------------------+--------------------------------------
-|
| CVTCN    | Convert Characters to   | Result       NUMV, DTAPTR-NUM
|
|          | Numeric                 | Source       CHAR, DTAPTR-CHAR
|
|          |                         | Attributes   CHAR(7), DTAPTR-CHAR(?)
|
|----------+-------------------------+--------------------------------------
-|
| CVTCS    | Convert Characters to   | Result       CHARV
|
|   IB     | SNA Format              | Control      CHAR(15)V
|
|          |                         | Source       CHAR
|
|   2 ext  |                         | SE RO
|
|----------+-------------------------+--------------------------------------
-|
| CVTDFFP  | Convert Decimal Form to | Result       FLOATV
|
|          | Floating-Point          | Dec.exponent PKD, ZND
|
|          |                         | Dec.mantissa PKD, ZND
|
|----------+-------------------------+--------------------------------------
-|
| CVTEFN   | Convert External Form   | Result       NUMV, DTAPTR-NUM
|
|          | to Numeric Value        | Source       CHAR, DTAPTR-CHAR
|
|          |                         | Mask         CHAR(3),DTAPTR-CHAR(3),*
|
|----------+-------------------------+--------------------------------------
-|
| CVTFPDF  | Convert Floating-Point  | Dec.exponent PKDV, ZNDV
|
|   R      | to Decimal Form         | Dec.mantissa PKDV, ZNDV
|
|          |                         | Source       FLOAT
|
|----------+-------------------------+--------------------------------------
-|
| CVTHC    | Convert HEX to          | Result       CHARV                 S0
|
|          | Characters              | Source       CHAR                  S0
|
|          |                         | Length of result, pad X'F0'
|
|----------+-------------------------+--------------------------------------
-|
| CVTMC    | Convert Multi-leaving   | Result       CHARV
|
|   IB     | Remote Job Entry Format | Control      CHAR(6)VF
|
|          | to Characters           | Source       CHAR
|
|   2 ext  |                         | SE RO
|
|----------+-------------------------+--------------------------------------
-|
| CVTNC    | Convert Numeric to      | Result       CHARV, DTAPTR-CHARV
|
|          | Characters              | Source       NUM, DTAPTR-NUM
|
|          |                         | Attributes   CHAR(7), DTAPTR-CHAR(7)
|
|----------+-------------------------+--------------------------------------
-|
| CVTSB    | Convert SNA Format to   | Result       CHARV
|
|   IB     | Characters              | Control      CHAR(14)V
|
|          |                         | Source       CHAR
|
|   3 ext  |                         | SE RO EC
|
|----------+-------------------------+--------------------------------------
-|
| CPYBTLLS | Copy Bits with Left     | Receiver     CHARV, NUMV
|
|          | Logical Shift           | Source       CHAR, NUM, IMM(1)
|
|          |                         | Shift        CHAR(2)F, IMM(2)
|
|          |                         | Length of receiver, pad B'0'
|
|----------+-------------------------+--------------------------------------
-|
| CPYBTRLS | Copy Bits with Right    | Receiver     CHARV, NUMV
|
|          | Logical Shift           | Source       CHAR, NUM, IMM(1)
|
|          |                         | Shift        CHAR(2)F, IMM(2)
|
|          |                         | Length of receiver, pad B'0'
|
|----------+-------------------------+--------------------------------------
-|
| CPYBLA   | Copy Bytes Left-Adjusted| Receiver     CHARV, NUMV,          S0
|
|          |                         |              DTAPTR-CHARV,-NUMV    S0
|
|          |                         | Source       CHAR, NUM,            S0
|
|          |                         |              DTAPTR-CHAR,-NUM      S0
|
|          |                         | Shorter of two operands
|
|----------+-------------------------+--------------------------------------
-|
| CPYBLAP  | Copy Bytes Left-Adjusted| Receiver     CHARV, NUMV,          S0
|
|          | with Pad                |              DTAPTR-CHARV,-NUMV    S0
|
|          |                         | Source       CHAR, NUM,            S0
|
|          |                         |              DTAPTR-CHAR,-NUM      S0
|
|          |                         | Pad          CHAR(1), NUM(1)
|
|          |                         | Length of receiver, pad
|
|----------+-------------------------+--------------------------------------
-|
| CPYBOLA  | Copy Bytes with Overlap | Receiver     CHARV, NUMV,          S0
|
|          | Left-Adjusted           | Source       CHAR, NUM,            S0
|
|          |                         | Shorter of two operands
|
|----------+-------------------------+--------------------------------------
-|
| CPYBOLAP | Copy Bytes with Overlap | Receiver     CHARV, NUMV,          S0
|
|          | Left-Adjusted with Pad  | Source       CHAR, NUM,            S0
|
|          |                         | Pad          CHAR(1), NUM(1)
|
|          |                         | Length of receiver, pad
|
|----------+-------------------------+--------------------------------------
-|
| CPYBREP  | Copy Bytes Repeatedly   | Receiver     CHARVF, NUMV,         S0
|
|          |                         | Source       CHARF, NUM,           S0
|
|          |                         | Length of receiver
|
|----------+-------------------------+--------------------------------------
-|
| CPYBRA   | Copy Bytes Right-       | Receiver     CHARV, NUMV,          S0
|
|          | Adjusted                |              DTAPTR-CHARV,-NUMV    S0
|
|          |                         | Source       CHAR, NUM,            S0
|
|          |                         |              DTAPTR-CHAR,-NUM      S0
|
|          |                         | Shorter of two operands
|
|----------+-------------------------+--------------------------------------
-|
| CPYBRAP  | Copy Bytes Right-       | Receiver     CHARV, NUMV,          S0
|
|          | Adjusted with Pad       |              DTAPTR-CHARV,-NUMV    S0
|
|          |                         | Source       CHAR, NUM,            S0
|
|          |                         |              DTAPTR-CHAR,-NUM      S0
|
|          |                         | Pad          CHAR(1), NUM(1)
|
|          |                         | Length of receiver, pad
|
|----------+-------------------------+--------------------------------------
-|
| CPYHEXNN | Copy Hex Digit Numeric  | Receiver     CHARV, NUMV,
|
|          | to Numeric              | Source       CHARF, NUM,
|
|----------+-------------------------+--------------------------------------
-|
| CPYHEXNZ | Copy Hex Digit Numeric  | Receiver     CHARVF, NUMV
|
|          | to Zone ?               | Source       CHARF, NUM
|
|----------+-------------------------+--------------------------------------
-|
| CPYHEXZN | Copy Hex Digit Zone to  | Receiver     CHARVF, NUMV
|
|          | to Numeric              | Source       CHARF, NUM
|
|----------+-------------------------+--------------------------------------
-|
| CPYHEXZZ | Copy Hex Digit Zone to  | Receiver     CHARVF, NUMV
|
|          | to Zone                 | Source       CHARF, NUM
|
|----------+-------------------------+--------------------------------------
-|
| CPYNV    | Copy Numeric Value      | Receiver     NUMV, DTAPTR-NUMV
|
|   IBR    |                         | Source       NUM, DTAPTR-NUM
|
|   4 ext  |                         | POS NEG ZER NAN
|
|----------+-------------------------+--------------------------------------
-|
| DIV      | Divide                  | Quotient     NUMV
|
|   IBSR   |                         | Dividend     NUM
|
|          |                         | Divisor      NUM
|
|   4 ext  |                         | POS NEG ZER NAN
|
|----------+-------------------------+--------------------------------------
-|
| DIVREM   | Divide with Remainder   | Quotient     NUMV
|
|   IBSR   |                         | Dividend     NUM
|
|          |                         | Divisor      NUM
|
|          |                         | Remainder    NUMV
|
|   3 ext  |                         | POS NEG ZER
|
|----------+-------------------------+--------------------------------------
-|
| EDIT     | Edit                    | Result       CHARV, DTAPTR-CHARV
|
|          |                         | Source       NUM, DTAPTR-NUM
|
|          |                         | Mask         NUM, DTAPTR-NUM
|
|----------+-------------------------+--------------------------------------
-|
| EXCHBY   | Exchange Bytes          | Source 1     NUMV, CHARVF
|
|          |                         | Source 2     NUMV, CHARVF
|
|          |                         | Same length
|
|----------+-------------------------+--------------------------------------
-|
| XOR      | Exclusive Or Bytes      | Result       CHARV                 S0
|
|   IBS    |                         | Source 1     CHAR                  S0
|
|          |                         | Source 2     CHAR                  S0
|
|          |                         | Longer of 2 sources, then place in
|
|          |                         | result, pad X'00' or truncate
|
|   2 ext  |                         | ZER NZER
|
|----------+-------------------------+--------------------------------------
-|
| ECSCAN   | Extended Character Scan | Result       BINV, BINA
|
|   IB req |                         | Base         CHAR
|
|          |                         | Compare      CHAR
|
|          |                         | Mode         CHAR(1)
|
|          |                         | Target(s)
|
|   3 ext  |                         | POS ZER EC
|
|----------+-------------------------+--------------------------------------
-|
| EXTREXP  | Extract Exponent        | Result       BINV
|
|   IB     |                         | Source       FLOAT
|
|   4 ext  |                         | NOR DEN INF NAN
|
|----------+-------------------------+--------------------------------------
-|
| EXTRMAG  | Extract Magnitude       | Result       NUMV
|
|   IB     |                         | Source       NUM
|
| ? 4 ext  |                         | POS ZER NAN
|
|----------+-------------------------+--------------------------------------
-|
| MULT     | Multiply                | Product      NUMV
|
|   IBSR   |                         | Multiplicand NUM
|
|          |                         | Multiplier   NUM
|
|   4 ext  |                         | POS NEG ZER NAN
|
|----------+-------------------------+--------------------------------------
-|
| NEG      | Negate Number           | Result       NUMV
|
|   IBS    |                         | Source       NUM
|
|   4 ext  |                         | POS NEG ZER NAN
|
|----------+-------------------------+--------------------------------------
-|
| NOT      | Not Bytes               | Result       CHARV                 S0
|
|   IBS    |                         | Source       CHAR                  S0
|
|          |                         | Length of result, pad X'00'
|
|   2 ext  |                         | ZER NZER
|
|----------+-------------------------+--------------------------------------
-|
| OR       | Or Bytes                | Result       CHARV                 S0
|
|   IBS    |                         | Source 1     CHAR                  S0
|
|          |                         | Source 2     CHAR                  S0
|
|          |                         | Longer of 2 sources, then place in
|
|          |                         | result, pad X'00' or truncate
|
|   2 ext  |                         | ZER NZER
|
|----------+-------------------------+--------------------------------------
-|
| REM      | Remainder               | Remainder    NUMV
|
|   IBS    |                         | Dividend     NUM
|
|          |                         | Divisor      NUM
|
|   3 ext  |                         | POS NEG ZER
|
|----------+-------------------------+--------------------------------------
-|
| SCALE    | Scale                   | Result       NUMV
|
|   IBS    |                         | Source       NUM
|
|          |                         | Scale Factor BIN(2)
|
|   4 ext  |                         | POS NEG ZER NAN
|
|----------+-------------------------+--------------------------------------
-|
| SCAN     | Scan Characters         | Result       BINV, BINA
|
|   IB     |                         | Base         CHAR
|
|          |                         | Compare      CHAR
|
| ? 2 ext  |                         | POS ZER NCMP
|
|----------+-------------------------+--------------------------------------
-|
| SCANWC   | Scan with Control       | Base Locator SPCPTR
|
|   IB     |                         | Control      CHAR(8)V
|
|          |                         | Options      CHAR(4)
|
|          |                         | Escape Addr  BP, INSPTR, IDL elem, *
|
|   4 ext  |                         | HI LO EQ NF
|
|----------+-------------------------+--------------------------------------
-|
| SEARCH   | Search                  | Result       BINV, BINA
|
|   IB     |                         | Array        CHARA, NUMA
|
|          |                         | Find         CHAR, NUM
|
|          |                         | Location     BIN
|
|   2 ext  |                         | POS ZER
|
|----------+-------------------------+--------------------------------------
-|
| SETIP    | Set Instruction Pointer | Result       INSPTR
|
|          |                         | Target       BP
|
|----------+-------------------------+--------------------------------------
-|
| SSCA     | Store and Set Compu-    | Old Attrs    CHAR(5)V
|
|   IB     | tational Attributes     | New Attrs    CHAR(5), *
|
|          |                         | Control      CHAR(5), *
|
|----------+-------------------------+--------------------------------------
-|
| SUBLC    | Subtract Logical        | Difference   CHARVF
|
|   IBS    | Character               | Minuend      CHARF
|
|          |                         | Subtrahend   CHARF
|
|          |                         | All same length <= 256             ?
|
|   3 ext  |                         | ZC NTZC NTZNTC
|
|----------+-------------------------+--------------------------------------
-|
| SUBN     | Subtract Numeric        | Difference   NUMV
|
|   IBSR   |                         | Minuend      NUM
|
|          |                         | Subtrahend   NUM
|
|   4 ext  |                         | POS NEG ZER NAN
|
|----------+-------------------------+--------------------------------------
-|
| TSTRPLC  | Test and Replace        | Result       CHARV
|
|   IBS    | Characters              | Replacement  CHAR
|
|----------+-------------------------+--------------------------------------
-|
| TSTBUM   | Test Bits Under Mask    | Source       CHAR, NUM
|
|   IB req |                         | Mask         CHAR, NUM
|
|          |                         | Target(s)
|
|          |                         | Same length                        ?
|
|   3 ext  |                         | ZER ONES MXD
|
|----------+-------------------------+--------------------------------------
-|
| XLATE    | Translate               | Result       CHARV                 S0
|
|          |                         | Source       CHAR                  S0
|
|          |                         | Position     CHAR, *               S0
|
|          |                         | Replacement  CHAR                  S0
|
|----------+-------------------------+--------------------------------------
-|
| XLATEWT  | Translate with Table    | Result       CHARV                 S0
|
|          |                         | Source       CHAR                  S0
|
|          |                         | Table        CHAR(256)             S0
|
|          |                         | Shorter of result and source
|
|----------+-------------------------+--------------------------------------
-|
| TRIML    | Trim Length             | Length       NUMV
|
|          |                         | Source       CHAR
|
|          |                         | Trim Char    CHAR(1)
|
|----------+-------------------------+--------------------------------------
-|
| VERIFY   | Verify                  | Invalid pos. BINV, BINA
|
|   IB     |                         | Source       CHAR                  S0
|
|          |                         | Class        CHAR                  S0
|
|   2 ext  |                         | ZER POS
|
`----------'-------------------------'--------------------------------------
-'

+---
| This is the MI Programmers Mailing List!
| To submit a new message, send your mail to MI400@midrange.com.
| To subscribe to this list send email to MI400-SUB@midrange.com.
| To unsubscribe from this list send email to MI400-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: dr2@cssas400.com
+---


As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.