Annotation of coherent/b/bin/as/opcodes.doc, revision 1.1

1.1     ! root        1: 37     \fBaaa\fR               Adjust after addition
        !             2: d5 0a  \fBaad\fR               Adjust AX before division
        !             3: d4 0a  \fBaam\fR               Adjust AX after multiply
        !             4: 3f     \fBaas\fR               Adjust AL after subtraction
        !             5: .sp \n(pDu
        !             6:        \fBadc\fR               Add with carry
        !             7: 83 /2  \fBadcl\fR      \fIimm8s,rm32\fR
        !             8: 83 /2  \fBadcw\fR      \fIimm8s,rm16\fR
        !             9: 14     \fBadcb\fR      \fIimm8,al\fR
        !            10: 15     \fBadcw\fR      \fIimm16,ax\fR
        !            11: 15     \fBadcl\fR      \fIimm32,eax\fR
        !            12: 15     \fBadcl\fR      \fIimm32\fR
        !            13: 80 /2  \fBadcb\fR      \fIimm8,rm8\fR
        !            14: 81 /2  \fBadcw\fR      \fIimm16,rm16\fR
        !            15: 81 /2  \fBadcl\fR      \fIimm32,rm32\fR
        !            16: 12 /r  \fBadcb\fR      \fIrm8,r8\fR
        !            17: 13 /r  \fBadcw\fR      \fIrm16,r16\fR
        !            18: 13 /r  \fBadcl\fR      \fIrm32,r32\fR
        !            19: 10 /r  \fBadcb\fR      \fIr8,rm8\fR
        !            20: 11 /r  \fBadcw\fR      \fIr16,rm16\fR
        !            21: 11 /r  \fBadcl\fR      \fIr32,rm32\fR
        !            22: .sp \n(pDu
        !            23:        \fBadd\fR               Add
        !            24: 83 /0  \fBaddl\fR      \fIimm8s,rm32\fR
        !            25: 83 /0  \fBaddw\fR      \fIimm8s,rm16\fR
        !            26: 04     \fBaddb\fR      \fIimm8,al\fR
        !            27: 05     \fBaddw\fR      \fIimm16,ax\fR
        !            28: 05     \fBaddl\fR      \fIimm32,eax\fR
        !            29: 05     \fBaddl\fR      \fIimm32\fR
        !            30: 80 /0  \fBaddb\fR      \fIimm8,rm8\fR
        !            31: 81 /0  \fBaddw\fR      \fIimm16,rm16\fR
        !            32: 81 /0  \fBaddl\fR      \fIimm32,rm32\fR
        !            33: 02 /r  \fBaddb\fR      \fIrm8,r8\fR
        !            34: 03 /r  \fBaddw\fR      \fIrm16,r16\fR
        !            35: 03 /r  \fBaddl\fR      \fIrm32,r32\fR
        !            36: 00 /r  \fBaddb\fR      \fIr8,rm8\fR
        !            37: 01 /r  \fBaddw\fR      \fIr16,rm16\fR
        !            38: 01 /r  \fBaddl\fR      \fIr32,rm32\fR
        !            39: .sp \n(pDu
        !            40:        \fBand\fR               Logical AND
        !            41: 83 /4  \fBandl\fR      \fIimm8s,rm32\fR
        !            42: 83 /4  \fBandw\fR      \fIimm8s,rm16\fR
        !            43: 24     \fBandb\fR      \fIimm8,al\fR
        !            44: 25     \fBandw\fR      \fIimm16,ax\fR
        !            45: 25     \fBandl\fR      \fIimm32,eax\fR
        !            46: 25     \fBandl\fR      \fIimm32\fR
        !            47: 80 /4  \fBandb\fR      \fIimm8,rm8\fR
        !            48: 81 /4  \fBandw\fR      \fIimm16,rm16\fR
        !            49: 81 /4  \fBandl\fR      \fIimm32,rm32\fR
        !            50: 22 /r  \fBandb\fR      \fIrm8,r8\fR
        !            51: 23 /r  \fBandw\fR      \fIrm16,r16\fR
        !            52: 23 /r  \fBandl\fR      \fIrm32,r32\fR
        !            53: 20 /r  \fBandb\fR      \fIr8,rm8\fR
        !            54: 21 /r  \fBandw\fR      \fIr16,rm16\fR
        !            55: 21 /r  \fBandl\fR      \fIr32,rm32\fR
        !            56: .sp \n(pDu
        !            57: 63 /r  \fBarpl\fR      \fIr16,rm16\fR  Adjust RPL field of selector
        !            58: .sp \n(pDu
        !            59:        \fBbound\fR             Check if register is within bounds
        !            60: 62 /r  \fBboundw\fR    \fIm16,r16\fR
        !            61: 62 /r  \fBboundl\fR    \fIm32,r32\fR
        !            62: .sp \n(pDu
        !            63:        \fBbsf\fR               Bit scan forward
        !            64: 0F bc  \fBbsfw\fR      \fIrm16,r16\fR
        !            65: 0F bc  \fBbsfl\fR      \fIrm32,r32\fR
        !            66: .sp \n(pDu
        !            67:        \fBbsr\fR               Bit scan reverse
        !            68: 0F bd  \fBbsrw\fR      \fIrm16,r16\fR
        !            69: 0F bd  \fBbsrl\fR      \fIrm32,r32\fR
        !            70: .sp \n(pDu
        !            71:        \fBbt\fR                Save bit in carry flag
        !            72: 0F a3  \fBbtw\fR       \fIr16,rm16\fR
        !            73: 0F a3  \fBbtl\fR       \fIr32,rm32\fR
        !            74: 0F ba /4       \fBbtw\fR       \fIimm8,rm16\fR
        !            75: 0F ba /4       \fBbtl\fR       \fIimm8,rm32\fR
        !            76: .sp \n(pDu
        !            77:        \fBbtc\fR               Bit test and complement
        !            78: 0F bb  \fBbtcw\fR      \fIr16,rm16\fR
        !            79: 0F bb  \fBbtcl\fR      \fIr32,rm32\fR
        !            80: 0F ba /7       \fBbtcw\fR      \fIimm8,rm16\fR
        !            81: 0F ba /7       \fBbtcl\fR      \fIimm8,rm32\fR
        !            82: .sp \n(pDu
        !            83:        \fBbtr\fR               Bit test and reset
        !            84: 0F b3  \fBbtrw\fR      \fIr16,rm16\fR
        !            85: 0F b3  \fBbtrl\fR      \fIr32,rm32\fR
        !            86: 0F ba /6       \fBbtrw\fR      \fIimm8,rm16\fR
        !            87: 0F ba /6       \fBbtrl\fR      \fIimm8,rm32\fR
        !            88: .sp \n(pDu
        !            89:        \fBbts\fR               Bit test and set
        !            90: 0F ab  \fBbtsw\fR      \fIr16,rm16\fR
        !            91: 0F ab  \fBbtsl\fR      \fIr32,rm32\fR
        !            92: 0F ba /5       \fBbtsw\fR      \fIimm8,rm16\fR
        !            93: 0F ba /5       \fBbtsl\fR      \fIimm8,rm32\fR
        !            94: .sp \n(pDu
        !            95: e8     \fBcall\fR      \fIreli\fR      Call Procedure
        !            96: 98     \fBcbtw\fR              Sign extend AL
        !            97: 98     \fBcbw\fR               Sign extend AL
        !            98: 99     \fBcdq\fR               Double word to quad word
        !            99: f8     \fBclc\fR               Clear carry
        !           100: fc     \fBcld\fR               Clear direction Flag
        !           101: fa     \fBcli\fR               Clear interrupt Flag
        !           102: 99     \fBcltd\fR              Double word to quad word
        !           103: 0F 06  \fBclts\fR              Clear task-switched flag in CR0
        !           104: f5     \fBcmc\fR               Complement carry flag
        !           105: .sp \n(pDu
        !           106:        \fBcmp\fR               Compare
        !           107: 83 /7  \fBcmpl\fR      \fIimm8s,rm32\fR
        !           108: 83 /7  \fBcmpw\fR      \fIimm8s,rm16\fR
        !           109: 3c     \fBcmpb\fR      \fIimm8,al\fR
        !           110: 3d     \fBcmpw\fR      \fIimm16,ax\fR
        !           111: 3d     \fBcmpl\fR      \fIimm32,eax\fR
        !           112: 3d     \fBcmpl\fR      \fIimm32\fR
        !           113: 80 /7  \fBcmpb\fR      \fIimm8,rm8\fR
        !           114: 81 /7  \fBcmpw\fR      \fIimm16,rm16\fR
        !           115: 81 /7  \fBcmpl\fR      \fIimm32,rm32\fR
        !           116: 3a /r  \fBcmpb\fR      \fIrm8,r8\fR
        !           117: 3b /r  \fBcmpw\fR      \fIrm16,r16\fR
        !           118: 3b /r  \fBcmpl\fR      \fIrm32,r32\fR
        !           119: 38 /r  \fBcmpb\fR      \fIr8,rm8\fR
        !           120: 39 /r  \fBcmpw\fR      \fIr16,rm16\fR
        !           121: 39 /r  \fBcmpl\fR      \fIr32,rm32\fR
        !           122: .sp \n(pDu
        !           123: a6     \fBcmpsb\fR             Compare bytes
        !           124: a7     \fBcmpsl\fR             Compare long
        !           125: a7     \fBcmpsw\fR             Compare words
        !           126: 99     \fBcwd\fR               Word to double word
        !           127: 98     \fBcwde\fR              Sign extend AX
        !           128: 99     \fBcwtd\fR              Word to double word
        !           129: 98     \fBcwtl\fR              Sign extend AX
        !           130: 27     \fBdaa\fR               Decimal adjust after addition
        !           131: 2f     \fBdas\fR               Decimal adjust after subtraction
        !           132: .sp \n(pDu
        !           133:        \fBdec\fR               Decrement by 1
        !           134: 48 +r  \fBdecw\fR      \fIr16\fR
        !           135: 48 +r  \fBdecl\fR      \fIr32\fR
        !           136: fe /1  \fBdecb\fR      \fIrm8\fR
        !           137: ff /1  \fBdecw\fR      \fIrm16\fR
        !           138: ff /1  \fBdecl\fR      \fIrm32\fR
        !           139: .sp \n(pDu
        !           140:        \fBdiv\fR               Unsigned divide
        !           141: f6 /6  \fBdivb\fR      \fIrm8,al\fR
        !           142: f6 /6  \fBdivb\fR      \fIrm8\fR
        !           143: f7 /6  \fBdivw\fR      \fIrm16,ax\fR
        !           144: f7 /6  \fBdivw\fR      \fIrm16\fR
        !           145: f7 /6  \fBdivl\fR      \fIrm32,eax\fR
        !           146: f7 /6  \fBdivl\fR      \fIrm32\fR
        !           147: .sp \n(pDu
        !           148: c8     \fBenter\fR     \fIimm8,imm16\fR        Make stack frame for procedure
        !           149: d9 f0  \fBf2xm1\fR             ST = 2 ** ST - 1
        !           150: d9 e1  \fBfabs\fR              ST = abs(ST)
        !           151: .sp \n(pDu
        !           152:        \fBfadd\fR              Floating add
        !           153: d8 /0  \fBfadds\fR     \fIm32\fR
        !           154: dc /0  \fBfaddl\fR     \fIm64\fR
        !           155: d8 c0 +r       \fBfadd\fR      \fIfpreg,st0\fR
        !           156: d8 c0 +r       \fBfadd\fR      \fIfpreg\fR
        !           157: de c1  \fBfadd\fR
        !           158: dc c0 +r       \fBfadd\fR      \fIst0,fpreg\fR
        !           159: .sp \n(pDu
        !           160:        \fBfaddp\fR             Floating add and pop
        !           161: de c0 +r       \fBfaddp\fR     \fIst0,fpreg\fR
        !           162: de c0 +r       \fBfaddp\fR     \fIfpreg\fR
        !           163: de c1  \fBfaddp\fR
        !           164: .sp \n(pDu
        !           165: df /4  \fBfbld\fR      \fIm80\fR       Load Binary Coded Decimal
        !           166: df /6  \fBfbstp\fR     \fIm80\fR       Store Binary Coded Decimal and Pop
        !           167: d9 e0  \fBfchs\fR              Change Floating Sign
        !           168: 9B db e2       \fBfclex\fR             Clear floating point exception flags
        !           169: .sp \n(pDu
        !           170:        \fBfcom\fR              Floating Compare
        !           171: d8 /2  \fBfcoms\fR     \fIm32\fR
        !           172: dc /2  \fBfcoml\fR     \fIm64\fR
        !           173: d8 d0 +r       \fBfcom\fR      \fIfpreg,st0\fR
        !           174: d8 d0 +r       \fBfcom\fR      \fIfpreg\fR
        !           175: d8 d1  \fBfcom\fR
        !           176: .sp \n(pDu
        !           177:        \fBfcomp\fR             Floating Compare and Pop
        !           178: d8 /3  \fBfcomps\fR    \fIm32\fR
        !           179: dc /3  \fBfcompl\fR    \fIm64\fR
        !           180: d8 d8 +r       \fBfcomp\fR     \fIfpreg\fR
        !           181: d8 d9  \fBfcomp\fR
        !           182: .sp \n(pDu
        !           183: de d9  \fBfcompp\fR            Floating Compare and pop twice
        !           184: d9 ff  \fBfcos\fR              Cosine
        !           185: d9 f6  \fBfdecstp\fR           Decrement Stack Top Pointer
        !           186: .sp \n(pDu
        !           187:        \fBfdiv\fR              Floating divide
        !           188: d8 /6  \fBfdivs\fR     \fIm32\fR
        !           189: dc /6  \fBfdivl\fR     \fIm64\fR
        !           190: d8 f0 +r       \fBfdiv\fR      \fIfpreg,st0\fR
        !           191: d8 f0 +r       \fBfdiv\fR      \fIfpreg\fR
        !           192: de f1  \fBfdiv\fR
        !           193: dc f0 +r       \fBfdiv\fR      \fIst0,fpreg\fR
        !           194: .sp \n(pDu
        !           195:        \fBfdivp\fR             Floating divide and pop
        !           196: de f0 +r       \fBfdivp\fR     \fIst0,fpreg\fR
        !           197: de f0 +r       \fBfdivp\fR     \fIfpreg\fR
        !           198: de f1  \fBfdivp\fR
        !           199: .sp \n(pDu
        !           200:        \fBfdivr\fR             Reverse floating divide
        !           201: d8 /7  \fBfdivrs\fR    \fIm32\fR
        !           202: dc /7  \fBfdivrl\fR    \fIm64\fR
        !           203: d8 f8 +r       \fBfdivr\fR     \fIfpreg,st0\fR
        !           204: d8 f8 +r       \fBfdivr\fR     \fIfpreg\fR
        !           205: de f9  \fBfdivr\fR
        !           206: dc f8 +r       \fBfdivr\fR     \fIst0,fpreg\fR
        !           207: .sp \n(pDu
        !           208:        \fBfdivrp\fR            Reverse floating divide and pop
        !           209: de f8 +r       \fBfdivrp\fR    \fIst0,fpreg\fR
        !           210: de f8 +r       \fBfdivrp\fR    \fIfpreg\fR
        !           211: de f9  \fBfdivrp\fR
        !           212: .sp \n(pDu
        !           213: dd c0 +r       \fBffree\fR     \fIfpreg\fR     Free Floating Point Register
        !           214: .sp \n(pDu
        !           215:        \fBfiadd\fR             Add integer to float
        !           216: da /0  \fBfiaddl\fR    \fIm32\fR
        !           217: de /0  \fBfiadds\fR    \fIm16\fR
        !           218: .sp \n(pDu
        !           219:        \fBficom\fR             Compare float to integer
        !           220: da /2  \fBficoml\fR    \fIm32\fR
        !           221: de /2  \fBficoms\fR    \fIm16\fR
        !           222: .sp \n(pDu
        !           223:        \fBficomp\fR            Compare float to integer and pop
        !           224: da /3  \fBficompl\fR   \fIm32\fR
        !           225: de /3  \fBficomps\fR   \fIm16\fR
        !           226: .sp \n(pDu
        !           227:        \fBfidiv\fR             Divide float by integer
        !           228: da /6  \fBfidivl\fR    \fIm32\fR
        !           229: de /6  \fBfidivs\fR    \fIm16\fR
        !           230: .sp \n(pDu
        !           231:        \fBfidivr\fR            Reverse divide integer by float
        !           232: da /7  \fBfidivrl\fR   \fIm32\fR
        !           233: de /7  \fBfidivrs\fR   \fIm16\fR
        !           234: .sp \n(pDu
        !           235:        \fBfild\fR              Load integer
        !           236: db /0  \fBfildl\fR     \fIm32\fR
        !           237: df /0  \fBfilds\fR     \fIm16\fR
        !           238: df /5  \fBfildll\fR    \fIm64\fR
        !           239: .sp \n(pDu
        !           240:        \fBfimul\fR             Multiply integer to float
        !           241: da /1  \fBfimull\fR    \fIm32\fR
        !           242: de /1  \fBfimuls\fR    \fIm16\fR
        !           243: .sp \n(pDu
        !           244: d9 f7  \fBfincstp\fR           Increment Stack Top Pointer
        !           245: 9B db e3       \fBfinit\fR             Initialize Floating Point Unit
        !           246: .sp \n(pDu
        !           247:        \fBfist\fR              Store integer
        !           248: db /2  \fBfistl\fR     \fIm32\fR
        !           249: df /2  \fBfists\fR     \fIm16\fR
        !           250: .sp \n(pDu
        !           251:        \fBfistp\fR             Store integer and pop
        !           252: db /3  \fBfistpl\fR    \fIm32\fR
        !           253: df /3  \fBfistps\fR    \fIm16\fR
        !           254: df /7  \fBfistpll\fR   \fIm32\fR
        !           255: .sp \n(pDu
        !           256:        \fBfisub\fR             Subtract integer from float
        !           257: da /4  \fBfisubl\fR    \fIm32\fR
        !           258: de /4  \fBfisubs\fR    \fIm16\fR
        !           259: .sp \n(pDu
        !           260:        \fBfisubr\fR            Reverse subtract integer from float
        !           261: da /5  \fBfisubrl\fR   \fIm32\fR
        !           262: de /5  \fBfisubrs\fR   \fIm16\fR
        !           263: .sp \n(pDu
        !           264:        \fBfld\fR               Load Real
        !           265: d9 c0 +r       \fBfld\fR       \fIfpreg\fR
        !           266: d9 /0  \fBflds\fR      \fIm32\fR
        !           267: dd /0  \fBfldl\fR      \fIm32\fR
        !           268: db /5  \fBfldt\fR      \fIm64\fR
        !           269: .sp \n(pDu
        !           270: d9 e8  \fBfld1\fR              Load Constant 1
        !           271: d9 /5  \fBfldcw\fR     \fIm32\fR       Load Floating Point Control Word
        !           272: d9 /4  \fBfldenv\fR    \fIm32\fR       Load FPU Environment
        !           273: d9 ea  \fBfldl2e\fR            Load Constant log(e) base 2
        !           274: d9 e9  \fBfldl2t\fR            Load Constant log(10) base 2
        !           275: d9 ec  \fBfldlg2\fR            Load Constant log(2) base 10
        !           276: d9 ed  \fBfldln2\fR            Load Constant log(2) base e
        !           277: d9 eb  \fBfldpi\fR             Load Constant pi
        !           278: d9 ee  \fBfldz\fR              Load Constant 0.0
        !           279: .sp \n(pDu
        !           280:        \fBfmul\fR              Floating multiply
        !           281: d8 /1  \fBfmuls\fR     \fIm32\fR
        !           282: dc /1  \fBfmull\fR     \fIm64\fR
        !           283: d8 c8 +r       \fBfmul\fR      \fIfpreg,st0\fR
        !           284: d8 c8 +r       \fBfmul\fR      \fIfpreg\fR
        !           285: de c9  \fBfmul\fR
        !           286: dc c8 +r       \fBfmul\fR      \fIst0,fpreg\fR
        !           287: .sp \n(pDu
        !           288:        \fBfmulp\fR             Floating multiply and pop
        !           289: de c8 +r       \fBfmulp\fR     \fIst0,fpreg\fR
        !           290: de c8 +r       \fBfmulp\fR     \fIfpreg\fR
        !           291: de c9  \fBfmulp\fR
        !           292: .sp \n(pDu
        !           293: db e2  \fBfnclex\fR            Clear floating point exception flags no wait
        !           294: db e3  \fBfninit\fR            Initialize Floating Point Unit no wait
        !           295: d9 d0  \fBfnop\fR              No Operation
        !           296: dd /6  \fBfnsave\fR    \fIm32\fR       Store FPU State no wait
        !           297: d9 /7  \fBfnstcw\fR    \fIm32\fR       Store Control Word no wait
        !           298: d9 /6  \fBfnstenv\fR   \fIm32\fR       Store FPU Environment no wait
        !           299: .sp \n(pDu
        !           300:        \fBfnstsw\fR            Store Status Word no wait
        !           301: dd /7  \fBfnstsw\fR    \fIm16\fR
        !           302: df e0  \fBfnstsw\fR    \fIax\fR
        !           303: .sp \n(pDu
        !           304: d9 f3  \fBfpatan\fR            Partial Arctangent
        !           305: d9 f8  \fBfprem\fR             Partial Remainder toward 0
        !           306: d9 f5  \fBfprem1\fR            Partial Remainder < 1/2 modulus
        !           307: d9 f2  \fBfptan\fR             Partial Tangent
        !           308: d9 fc  \fBfrndint\fR           Round To Integer
        !           309: dd /4  \fBfrstor\fR    \fIm32\fR       Resore FPU State
        !           310: db f4  \fBfrstpm\fR            set 287XL real mode (nop for 387/486)
        !           311: 9B dd /6       \fBfsave\fR     \fIm32\fR       Store FPU State
        !           312: d9 fd  \fBfscale\fR            Scale
        !           313: db e4  \fBfsetpm\fR            set 287 protected mode (nop for 387/486)
        !           314: d9 fe  \fBfsin\fR              Sine
        !           315: d9 fb  \fBfsincos\fR           Sine and Cosine
        !           316: d9 fa  \fBfsqrt\fR             Square Root
        !           317: .sp \n(pDu
        !           318:        \fBfst\fR               Store Real
        !           319: dd d0 +r       \fBfst\fR       \fIfpreg\fR
        !           320: d9 /2  \fBfsts\fR      \fIm32\fR
        !           321: dd /2  \fBfstl\fR      \fIm64\fR
        !           322: .sp \n(pDu
        !           323: 9B d9 /7       \fBfstcw\fR     \fIm32\fR       Store Control Word
        !           324: 9B d9 /6       \fBfstenv\fR    \fIm32\fR       Store FPU Environment
        !           325: .sp \n(pDu
        !           326:        \fBfstp\fR              Store Real and pop
        !           327: dd d8 +r       \fBfstp\fR      \fIfpreg\fR
        !           328: d9 /3  \fBfstps\fR     \fIm32\fR
        !           329: dd /3  \fBfstpl\fR     \fIm64\fR
        !           330: db /7  \fBfstpt\fR     \fIm80\fR
        !           331: .sp \n(pDu
        !           332:        \fBfstsw\fR             Store Status Word
        !           333: 9B dd /7       \fBfstsw\fR     \fIm16\fR
        !           334: 9B df e0       \fBfstsw\fR     \fIax\fR
        !           335: .sp \n(pDu
        !           336:        \fBfsub\fR              Floating subtract
        !           337: d8 /4  \fBfsubs\fR     \fIm32\fR
        !           338: dc /4  \fBfsubl\fR     \fIm64\fR
        !           339: d8 e0 +r       \fBfsub\fR      \fIfpreg,st0\fR
        !           340: d8 e0 +r       \fBfsub\fR      \fIfpreg\fR
        !           341: de e1  \fBfsub\fR
        !           342: dc e0 +r       \fBfsub\fR      \fIst0,fpreg\fR
        !           343: .sp \n(pDu
        !           344:        \fBfsubp\fR             Floating subtract and pop
        !           345: de e0 +r       \fBfsubp\fR     \fIst0,fpreg\fR
        !           346: de e0 +r       \fBfsubp\fR     \fIfpreg\fR
        !           347: de e1  \fBfsubp\fR
        !           348: .sp \n(pDu
        !           349:        \fBfsubr\fR             Reverse floating subtract
        !           350: d8 /5  \fBfsubrs\fR    \fIm32\fR
        !           351: dc /5  \fBfsubrl\fR    \fIm64\fR
        !           352: d8 e8 +r       \fBfsubr\fR     \fIfpreg,st0\fR
        !           353: d8 e8 +r       \fBfsubr\fR     \fIfpreg\fR
        !           354: de e9  \fBfsubr\fR
        !           355: dc e8 +r       \fBfsubr\fR     \fIst0,fpreg\fR
        !           356: .sp \n(pDu
        !           357:        \fBfsubrp\fR            Reverse floating subtract and pop
        !           358: de e8 +r       \fBfsubrp\fR    \fIst0,fpreg\fR
        !           359: de e8 +r       \fBfsubrp\fR    \fIfpreg\fR
        !           360: de e9  \fBfsubrp\fR
        !           361: .sp \n(pDu
        !           362: d9 e4  \fBftst\fR              Test
        !           363: .sp \n(pDu
        !           364:        \fBfucom\fR             Unordered compare real
        !           365: dd e0 +r       \fBfucom\fR     \fIst0,fpreg\fR
        !           366: dd e0 +r       \fBfucom\fR     \fIfpreg\fR
        !           367: dd e1  \fBfucom\fR
        !           368: .sp \n(pDu
        !           369:        \fBfucomp\fR            Unordered compare real and pop
        !           370: dd e8 +r       \fBfucomp\fR    \fIst0,fpreg\fR
        !           371: dd e8 +r       \fBfucomp\fR    \fIfpreg\fR
        !           372: dd e9  \fBfucomp\fR
        !           373: .sp \n(pDu
        !           374: da e9  \fBfucompp\fR           Unordered compare %st %st1 and pop twice
        !           375: 9b     \fBfwait\fR             Wait for coprocessor
        !           376: d9 e5  \fBfxam\fR              Examine
        !           377: .sp \n(pDu
        !           378:        \fBfxch\fR              Floating exchange
        !           379: d9 c8 +r       \fBfxch\fR      \fIst0,fpreg\fR
        !           380: d9 c8 +r       \fBfxch\fR      \fIfpreg,st0\fR
        !           381: d9 c8 +r       \fBfxch\fR      \fIfpreg\fR
        !           382: d9 c9  \fBfxch\fR
        !           383: .sp \n(pDu
        !           384: d9 f4  \fBfxtract\fR           Extract Exponent and Significand
        !           385: d9 f1  \fBfyl2x\fR             %st1 * log(%st) base 2
        !           386: d9 f9  \fBfyl2xp1\fR           %st1 * log(%st + 1.0) base 2
        !           387: f4     \fBhlt\fR               Halt
        !           388: ff /2  \fBicall\fR     \fIrm32\fR      Call indirect
        !           389: .sp \n(pDu
        !           390:        \fBidiv\fR              Signed divide
        !           391: f6 /7  \fBidivb\fR     \fIrm8,al\fR
        !           392: f6 /7  \fBidivb\fR     \fIrm8\fR
        !           393: f7 /7  \fBidivw\fR     \fIrm16,ax\fR
        !           394: f7 /7  \fBidivw\fR     \fIrm16\fR
        !           395: f7 /7  \fBidivl\fR     \fIrm32,eax\fR
        !           396: f7 /7  \fBidivl\fR     \fIrm32\fR
        !           397: .sp \n(pDu
        !           398: ff /4  \fBijmp\fR      \fIrm32\fR      Jump indirect
        !           399: ff /3  \fBilcall\fR    \fIm32\fR       Long call indirect
        !           400: ff /5  \fBiljmp\fR     \fIm32\fR       Long jump indirect
        !           401: .sp \n(pDu
        !           402:        \fBimul\fR              Signed multiply
        !           403: f6 /5  \fBimulb\fR     \fIrm8\fR
        !           404: f7 /5  \fBimulw\fR     \fIrm16\fR
        !           405: f7 /5  \fBimull\fR     \fIrm32\fR
        !           406: 0F af /r       \fBimulw\fR     \fIrm16,r16\fR
        !           407: 0F af /r       \fBimull\fR     \fIrm32,r32\fR
        !           408: 6b     \fBimulw\fR     \fIimm8s,rm16,r16\fR
        !           409: 6b     \fBimull\fR     \fIimm8s,rm32,r32\fR
        !           410: 6b /r  \fBimulw\fR     \fIimm8s,r16\fR
        !           411: 6b /r  \fBimull\fR     \fIimm8s,r32\fR
        !           412: 69     \fBimulw\fR     \fIimm16,rm16,r16\fR
        !           413: 69     \fBimull\fR     \fIimm32,rm32,r32\fR
        !           414: 69 /r  \fBimulw\fR     \fIimm16,r16\fR
        !           415: 69 /r  \fBimull\fR     \fIimm32,r32\fR
        !           416: .sp \n(pDu
        !           417:        \fBin\fR                Input from port
        !           418: ec     \fBin\fR        \fIdx,al\fR
        !           419: ed     \fBin\fR        \fIdx,ax\fR
        !           420: ed     \fBin\fR        \fIdx,eax\fR
        !           421: e4     \fBinb\fR       \fIimm8\fR
        !           422: e5     \fBinw\fR       \fIimm8\fR
        !           423: e5     \fBinl\fR       \fIimm8\fR
        !           424: ec     \fBinb\fR       \fI(dx)\fR
        !           425: ed     \fBinw\fR       \fI(dx)\fR
        !           426: ed     \fBinl\fR       \fI(dx)\fR
        !           427: .sp \n(pDu
        !           428:        \fBinc\fR               Increment by one
        !           429: 40 +r  \fBincw\fR      \fIr16\fR
        !           430: 40 +r  \fBincl\fR      \fIr32\fR
        !           431: fe /0  \fBincb\fR      \fIrm8\fR
        !           432: ff /0  \fBincw\fR      \fIrm16\fR
        !           433: ff /0  \fBincl\fR      \fIrm32\fR
        !           434: .sp \n(pDu
        !           435: 6c     \fBinsb\fR              Input byte from port into ES:(E)DI
        !           436: 6c     \fBinsb\fR      \fI(dx)\fR      Input byte from port into ES:(E)DI
        !           437: 6d     \fBinsl\fR              Input long from port into ES:(E)DI
        !           438: 6d     \fBinsl\fR      \fI(dx)\fR      Input long from port into ES:(E)DI
        !           439: 6d     \fBinsw\fR              Input word from port into ES:(E)DI
        !           440: 6d     \fBinsw\fR      \fI(dx)\fR      Input word from port into ES:(E)DI
        !           441: cc     \fBint\fR       \fIcon3\fR      Interrupt 3
        !           442: cd     \fBint\fR       \fIimm8\fR      Interrupt
        !           443: ce     \fBinto\fR              Int 4 if overflow is 1
        !           444: cf     \fBiret\fR              Interrupt return
        !           445: cf     \fBiretd\fR             Different mode different opcode ?
        !           446: 07     \fBja\fR        \fIreli\fR      Jump if above
        !           447:        
        !           448: 03     \fBjae\fR       \fIreli\fR      Jump if above or equal
        !           449: 02     \fBjb\fR        \fIreli\fR      Jump if below
        !           450: 06     \fBjbe\fR       \fIreli\fR      Jump if below or equal
        !           451: 02     \fBjc\fR        \fIreli\fR      Jump if carry
        !           452: e3     \fBjcxz\fR      \fIrel8\fR      Jump if CX is zero
        !           453: 04     \fBje\fR        \fIreli\fR      Jump if equal
        !           454: e3     \fBjecxz\fR     \fIrel8\fR      Jump if CX is zero
        !           455:        
        !           456: 0f     \fBjg\fR        \fIreli\fR      Jump if greater
        !           457: 0d     \fBjge\fR       \fIreli\fR      Jump if greater or equal
        !           458: 0c     \fBjl\fR        \fIreli\fR      Jump if less
        !           459: 0e     \fBjle\fR       \fIreli\fR      Jump if less or equal
        !           460: e9     \fBjmp\fR       \fIreli\fR      Jump absolute
        !           461: 06     \fBjna\fR       \fIreli\fR      Jump if not above
        !           462: 02     \fBjnae\fR      \fIreli\fR      Jump if not above or equal
        !           463: 03     \fBjnb\fR       \fIreli\fR      Jump if not below
        !           464: 07     \fBjnbe\fR      \fIreli\fR      Jump if not below or equal
        !           465: 03     \fBjnc\fR       \fIreli\fR      Jump if no carry
        !           466: 05     \fBjne\fR       \fIreli\fR      Jump if not equal
        !           467: 0e     \fBjng\fR       \fIreli\fR      Jump if not greater
        !           468: 0c     \fBjnge\fR      \fIreli\fR      Jump if not greater or equal
        !           469: 0d     \fBjnl\fR       \fIreli\fR      Jump if not less
        !           470: 0f     \fBjnle\fR      \fIreli\fR      Jump if not less or equal
        !           471: 01     \fBjno\fR       \fIreli\fR      Jump if not overflow
        !           472: 0b     \fBjnp\fR       \fIreli\fR      Jump if not parity
        !           473: 09     \fBjns\fR       \fIreli\fR      Jump if not sign
        !           474: 05     \fBjnz\fR       \fIreli\fR      Jump if not zero
        !           475: 00     \fBjo\fR        \fIreli\fR      Jump if overflow
        !           476: 0a     \fBjp\fR        \fIreli\fR      Jump if parity
        !           477: 0a     \fBjpe\fR       \fIreli\fR      Jump if parity even
        !           478: 0b     \fBjpo\fR       \fIreli\fR      Jump if parity odd
        !           479: 08     \fBjs\fR        \fIreli\fR      Jump if sign
        !           480: 04     \fBjz\fR        \fIreli\fR      Jump if zero
        !           481: 04     \fBjz\fR        \fIreli\fR      Jump if zero
        !           482: 9f     \fBlahf\fR              Load flags into AH register
        !           483: .sp \n(pDu
        !           484:        \fBlar\fR               Load access rights byte
        !           485: 0F 02 /r       \fBlarw\fR      \fIrm16,r16\fR
        !           486: 0F 02 /r       \fBlarl\fR      \fIrm32,r32\fR
        !           487: .sp \n(pDu
        !           488: 9a     \fBlcall\fR     \fIimm16x,imm32\fR      Long call
        !           489: .sp \n(pDu
        !           490:        \fBlds\fR               load full pointer DS:r16
        !           491: c5 /r  \fBldsw\fR      \fIm16,r16\fR
        !           492: c5 /r  \fBldsl\fR      \fIm32,r32\fR
        !           493: .sp \n(pDu
        !           494:        \fBlea\fR               Load effective address
        !           495: 8d /r  \fBleaw\fR      \fIm16,r16\fR
        !           496: 8d /r  \fBleal\fR      \fIm32,r32\fR
        !           497: .sp \n(pDu
        !           498: c9     \fBleave\fR             High level procedure exit
        !           499: .sp \n(pDu
        !           500:        \fBles\fR               Load full pointer ES:r16
        !           501: c4 /r  \fBlesw\fR      \fIm16,r16\fR
        !           502: c4 /r  \fBlesl\fR      \fIm32,r32\fR
        !           503: .sp \n(pDu
        !           504:        \fBlfs\fR               Load full pointer FS:r16
        !           505: 0F b4 /r       \fBlfsw\fR      \fIm16,r16\fR
        !           506: 0F b4 /r       \fBlfsl\fR      \fIm32,r32\fR
        !           507: .sp \n(pDu
        !           508:        \fBlgdt\fR              Load m into DGTR
        !           509: 0F 01 /2       \fBlgdtw\fR     \fIm16\fR
        !           510: 0F 01 /2       \fBlgdtl\fR     \fIm32\fR
        !           511: .sp \n(pDu
        !           512:        \fBlgs\fR               Load full pointer GS:r16
        !           513: 0F b5 /r       \fBlgsw\fR      \fIm16,r16\fR
        !           514: 0F b5 /r       \fBlgsl\fR      \fIm32,r32\fR
        !           515: .sp \n(pDu
        !           516:        \fBlidt\fR              Load m into IDTR
        !           517: 0F 01 /3       \fBlidtw\fR     \fIm16\fR
        !           518: 0F 01 /3       \fBlidtl\fR     \fIm32\fR
        !           519: .sp \n(pDu
        !           520: ea     \fBljmp\fR      \fIimm16x,imm32\fR      Long jump
        !           521: 0F 00 /2       \fBlldt\fR      \fIrm16\fR      Load local descriptor table register
        !           522: 0F 01 /6       \fBlmsw\fR      \fIrm16\fR      Load machine status word
        !           523: f0     \fBlock\fR              Assert lock signal for next instruction
        !           524: ac     \fBlodsb\fR             Load string operand byte
        !           525: ad     \fBlodsl\fR             Load string operand long
        !           526: ad     \fBlodsw\fR             Load string operand word
        !           527: e2     \fBloop\fR      \fIrel8\fR      Dec count jmp if count <> 0
        !           528: e1     \fBloope\fR     \fIrel8\fR      Dec count jmp if count <> 0 and ZF = 1
        !           529: e0     \fBloopne\fR    \fIrel8\fR      Dec count jmp if count <> 0 and ZF = 0
        !           530: e0     \fBloopnz\fR    \fIrel8\fR      Dec count jmp if count <> 0 and ZF = 0
        !           531: e1     \fBloopz\fR     \fIrel8\fR      Dec count jmp if count <> 0 and ZF = 1
        !           532: cb     \fBlret\fR              Far return
        !           533: ca     \fBlret\fR      \fIimm16\fR     Far return pop imm16 bytes of parms
        !           534: .sp \n(pDu
        !           535:        \fBlsl\fR               Load segment limit
        !           536: 0F 03 /r       \fBlslw\fR      \fIrm16,r16\fR
        !           537: 0F 03 /r       \fBlsll\fR      \fIrm32,r32\fR
        !           538: .sp \n(pDu
        !           539:        \fBlss\fR               Load full pointer SS:r16
        !           540: 0F b2 /r       \fBlssw\fR      \fIm16,r16\fR
        !           541: 0F b2 /r       \fBlssl\fR      \fIm32,r32\fR
        !           542: .sp \n(pDu
        !           543: 0F 00 /3       \fBltr\fR       \fIrm16\fR      Load task register
        !           544: .sp \n(pDu
        !           545:        \fBmov\fR               Move data
        !           546: a0     \fBmovb\fR      \fImoffs,al\fR
        !           547: a1     \fBmovw\fR      \fImoffs,ax\fR
        !           548: a1     \fBmovl\fR      \fImoffs,eax\fR
        !           549: a2     \fBmovb\fR      \fIal,moffs\fR
        !           550: a3     \fBmovw\fR      \fIax,moffs\fR
        !           551: a3     \fBmovl\fR      \fIeax,moffs\fR
        !           552: 8a /r  \fBmovb\fR      \fIrm8,r8\fR
        !           553: 8b /r  \fBmovw\fR      \fIrm16,r16\fR
        !           554: 8b /r  \fBmovl\fR      \fIrm32,r32\fR
        !           555: 88 /r  \fBmovb\fR      \fIr8,rm8\fR
        !           556: 89 /r  \fBmovw\fR      \fIr16,rm16\fR
        !           557: 89 /r  \fBmovl\fR      \fIr32,rm32\fR
        !           558: 8c /r  \fBmovw\fR      \fIsreg,rm16\fR
        !           559: 8e /r  \fBmovw\fR      \fIrm16,sreg\fR
        !           560: b0 +r  \fBmovb\fR      \fIimm8,r8\fR
        !           561: b8 +r  \fBmovw\fR      \fIimm16,r16\fR
        !           562: b8 +r  \fBmovl\fR      \fIimm32,r32\fR
        !           563: c6     \fBmovb\fR      \fIimm8,rm8\fR
        !           564: c7     \fBmovw\fR      \fIimm16,rm16\fR
        !           565: c7     \fBmovl\fR      \fIimm32,rm32\fR
        !           566: 0F 20 /r       \fBmovl\fR      \fIctlreg,r32\fR
        !           567: 0F 22 /r       \fBmovl\fR      \fIr32,ctlreg\fR
        !           568: 0F 21 /r       \fBmovl\fR      \fIdbreg,r32\fR
        !           569: 0F 23 /r       \fBmovl\fR      \fIr32,dbreg\fR
        !           570: 0F 24 /r       \fBmovl\fR      \fItreg,r32\fR
        !           571: 0F 26 /r       \fBmovl\fR      \fIr32,treg\fR
        !           572: .sp \n(pDu
        !           573: a4     \fBmovsb\fR             Move bytes
        !           574: a5     \fBmovsl\fR             Move longs
        !           575: a5     \fBmovsw\fR             Move words
        !           576: .sp \n(pDu
        !           577:        \fBmovsx\fR             Move with sign extend
        !           578: 0F be /r       \fBmovsxb\fR    \fIrm8,r16\fR
        !           579: 0F be /r       \fBmovsxb\fR    \fIrm8,r32\fR
        !           580: 0F bf /r       \fBmovsxw\fR    \fIrm16,r32\fR
        !           581: 0F be /r       \fBmovsbw\fR    \fIrm8,r16\fR
        !           582: 0F be /r       \fBmovsbl\fR    \fIrm8,r32\fR
        !           583: 0F bf /r       \fBmovswl\fR    \fIrm16,r32\fR
        !           584: .sp \n(pDu
        !           585:        \fBmovzx\fR             Move with zero extend
        !           586: 0F b6 /r       \fBmovzxb\fR    \fIrm8,r16\fR
        !           587: 0F b6 /r       \fBmovzxb\fR    \fIrm8,r32\fR
        !           588: 0F b7 /r       \fBmovzxw\fR    \fIrm16,r32\fR
        !           589: 0F b6 /r       \fBmovzbw\fR    \fIrm8,r16\fR
        !           590: 0F b6 /r       \fBmovzbl\fR    \fIrm8,r32\fR
        !           591: 0F b7 /r       \fBmovzwl\fR    \fIrm16,r32\fR
        !           592: .sp \n(pDu
        !           593:        \fBmul\fR               Unsigned multiply
        !           594: f6 /4  \fBmulb\fR      \fIrm8,al\fR
        !           595: f6 /4  \fBmulb\fR      \fIrm8\fR
        !           596: f7 /4  \fBmulw\fR      \fIrm16,ax\fR
        !           597: f7 /4  \fBmulw\fR      \fIrm16\fR
        !           598: f7 /4  \fBmull\fR      \fIrm32,eax\fR
        !           599: f7 /4  \fBmull\fR      \fIrm32\fR
        !           600: .sp \n(pDu
        !           601:        \fBneg\fR               Negate
        !           602: f6 /3  \fBnegb\fR      \fIrm8\fR
        !           603: f7 /3  \fBnegw\fR      \fIrm16\fR
        !           604: f7 /3  \fBnegl\fR      \fIrm32\fR
        !           605: .sp \n(pDu
        !           606: 90     \fBnop\fR               No operation
        !           607: .sp \n(pDu
        !           608:        \fBnot\fR               Invert bits
        !           609: f6 /2  \fBnotb\fR      \fIrm8\fR
        !           610: f7 /2  \fBnotw\fR      \fIrm16\fR
        !           611: f7 /2  \fBnotl\fR      \fIrm32\fR
        !           612: .sp \n(pDu
        !           613:        \fBor\fR                Logical inclusive OR
        !           614: 83 /1  \fBorl\fR       \fIimm8s,rm32\fR
        !           615: 83 /1  \fBorw\fR       \fIimm8s,rm16\fR
        !           616: 0c     \fBorb\fR       \fIimm8,al\fR
        !           617: 0d     \fBorw\fR       \fIimm16,ax\fR
        !           618: 0d     \fBorl\fR       \fIimm32,eax\fR
        !           619: 0d     \fBorl\fR       \fIimm32\fR
        !           620: 80 /1  \fBorb\fR       \fIimm8,rm8\fR
        !           621: 81 /1  \fBorw\fR       \fIimm16,rm16\fR
        !           622: 81 /1  \fBorl\fR       \fIimm32,rm32\fR
        !           623: 0a /r  \fBorb\fR       \fIrm8,r8\fR
        !           624: 0b /r  \fBorw\fR       \fIrm16,r16\fR
        !           625: 0b /r  \fBorl\fR       \fIrm32,r32\fR
        !           626: 08 /r  \fBorb\fR       \fIr8,rm8\fR
        !           627: 09 /r  \fBorw\fR       \fIr16,rm16\fR
        !           628: 09 /r  \fBorl\fR       \fIr32,rm32\fR
        !           629: .sp \n(pDu
        !           630:        \fBout\fR               Output from port
        !           631: e6     \fBoutb\fR      \fIimm8\fR
        !           632: e7     \fBoutw\fR      \fIimm8\fR
        !           633: e7     \fBoutl\fR      \fIimm8\fR
        !           634: ee     \fBoutb\fR      \fI(dx)\fR
        !           635: ef     \fBoutw\fR      \fI(dx)\fR
        !           636: ef     \fBoutl\fR      \fI(dx)\fR
        !           637: ee     \fBout\fR       \fIal,dx\fR
        !           638: ef     \fBout\fR       \fIax,dx\fR
        !           639: ef     \fBout\fR       \fIeax,dx\fR
        !           640: .sp \n(pDu
        !           641: 6e     \fBoutsb\fR             Output byte to port into ES:(E)DI
        !           642: 6f     \fBoutsl\fR             Output long to port into ES:(E)DI
        !           643: 6f     \fBoutsw\fR             Output word to port into ES:(E)DI
        !           644: .sp \n(pDu
        !           645:        \fBpop\fR               Pop a word from the stack
        !           646: 58 +r  \fBpopw\fR      \fIr16\fR
        !           647: 58 +r  \fBpopl\fR      \fIr32\fR
        !           648: 1f     \fBpopw\fR      \fIds\fR
        !           649: 07     \fBpopw\fR      \fIes\fR
        !           650: 17     \fBpopw\fR      \fIss\fR
        !           651: 0F a1  \fBpopw\fR      \fIfs\fR
        !           652: 0F a9  \fBpopw\fR      \fIgs\fR
        !           653: 8f /0  \fBpopw\fR      \fIm16\fR
        !           654: 8f /0  \fBpopl\fR      \fIm32\fR
        !           655: .sp \n(pDu
        !           656:        \fBpopa\fR              Pop all
        !           657: 61     \fBpopaw\fR
        !           658: 61     \fBpopal\fR
        !           659: .sp \n(pDu
        !           660:        \fBpopf\fR              Pop stack into flags
        !           661: 9d     \fBpopfw\fR
        !           662: 9d     \fBpopfl\fR
        !           663: .sp \n(pDu
        !           664:        \fBpush\fR              Push a word on the stack
        !           665: 50 +r  \fBpushw\fR     \fIr16\fR
        !           666: 50 +r  \fBpushl\fR     \fIr32\fR
        !           667: 6a     \fBpushb\fR     \fIimm8s\fR
        !           668: 68     \fBpushw\fR     \fIimm16\fR
        !           669: 68     \fBpushl\fR     \fIimm32\fR
        !           670: 0e     \fBpushw\fR     \fIcs\fR
        !           671: 1e     \fBpushw\fR     \fIds\fR
        !           672: 06     \fBpushw\fR     \fIes\fR
        !           673: 16     \fBpushw\fR     \fIss\fR
        !           674: 0F a0  \fBpushw\fR     \fIfs\fR
        !           675: 0F a8  \fBpushw\fR     \fIgs\fR
        !           676: ff /6  \fBpushw\fR     \fIm16\fR
        !           677: ff /6  \fBpushl\fR     \fIm32\fR
        !           678: .sp \n(pDu
        !           679:        \fBpusha\fR             Push all
        !           680: 60     \fBpushaw\fR
        !           681: 60     \fBpushal\fR
        !           682: .sp \n(pDu
        !           683:        \fBpushf\fR             Push flags
        !           684: 9c     \fBpushfw\fR
        !           685: 9c     \fBpushfl\fR
        !           686: .sp \n(pDu
        !           687:        \fBrcl\fR               Rotate carry left
        !           688: d0 /2  \fBrclb\fR      \fIcon1,rm8\fR
        !           689: d0 /2  \fBrclb\fR      \fIrm8\fR
        !           690: d2 /2  \fBrclb\fR      \fIcl,rm8\fR
        !           691: c0 /2  \fBrclb\fR      \fIimm8,rm8\fR
        !           692: d1 /2  \fBrclw\fR      \fIcon1,rm16\fR
        !           693: d1 /2  \fBrclw\fR      \fIrm16\fR
        !           694: d3 /2  \fBrclw\fR      \fIcl,rm16\fR
        !           695: c1 /2  \fBrclw\fR      \fIimm8,rm16\fR
        !           696: d1 /2  \fBrcll\fR      \fIcon1,rm32\fR
        !           697: d1 /2  \fBrcll\fR      \fIrm32\fR
        !           698: d3 /2  \fBrcll\fR      \fIcl,rm32\fR
        !           699: c1 /2  \fBrcll\fR      \fIimm8,rm32\fR
        !           700: .sp \n(pDu
        !           701:        \fBrcr\fR               Rotate carry right
        !           702: d0 /3  \fBrcrb\fR      \fIcon1,rm8\fR
        !           703: d0 /3  \fBrcrb\fR      \fIrm8\fR
        !           704: d2 /3  \fBrcrb\fR      \fIcl,rm8\fR
        !           705: c0 /3  \fBrcrb\fR      \fIimm8,rm8\fR
        !           706: d1 /3  \fBrcrw\fR      \fIcon1,rm16\fR
        !           707: d1 /3  \fBrcrw\fR      \fIrm16\fR
        !           708: d3 /3  \fBrcrw\fR      \fIcl,rm16\fR
        !           709: c1 /3  \fBrcrw\fR      \fIimm8,rm16\fR
        !           710: d1 /3  \fBrcrl\fR      \fIcon1,rm32\fR
        !           711: d1 /3  \fBrcrl\fR      \fIrm32\fR
        !           712: d3 /3  \fBrcrl\fR      \fIcl,rm32\fR
        !           713: c1 /3  \fBrcrl\fR      \fIimm8,rm32\fR
        !           714: .sp \n(pDu
        !           715: f3     \fBrep\fR               rep following instruction CX times
        !           716: f3     \fBrepe\fR              repe following instruction CX times or eq
        !           717: f2     \fBrepne\fR             repne following instruction CX times or ne
        !           718: f2     \fBrepnz\fR             alternate name for repnz
        !           719: f3     \fBrepz\fR              alternate name for repe
        !           720: c3     \fBret\fR               Return
        !           721: c2     \fBret\fR       \fIimm16\fR     Return pop imm16 bytes of parms
        !           722: .sp \n(pDu
        !           723:        \fBrol\fR               Rotate left
        !           724: d0 /0  \fBrolb\fR      \fIcon1,rm8\fR
        !           725: d0 /0  \fBrolb\fR      \fIrm8\fR
        !           726: d2 /0  \fBrolb\fR      \fIcl,rm8\fR
        !           727: c0 /0  \fBrolb\fR      \fIimm8,rm8\fR
        !           728: d1 /0  \fBrolw\fR      \fIcon1,rm16\fR
        !           729: d1 /0  \fBrolw\fR      \fIrm16\fR
        !           730: d3 /0  \fBrolw\fR      \fIcl,rm16\fR
        !           731: c1 /0  \fBrolw\fR      \fIimm8,rm16\fR
        !           732: d1 /0  \fBroll\fR      \fIcon1,rm32\fR
        !           733: d1 /0  \fBroll\fR      \fIrm32\fR
        !           734: d3 /0  \fBroll\fR      \fIcl,rm32\fR
        !           735: c1 /0  \fBroll\fR      \fIimm8,rm32\fR
        !           736: .sp \n(pDu
        !           737:        \fBror\fR               Rotate right
        !           738: d0 /1  \fBrorb\fR      \fIcon1,rm8\fR
        !           739: d0 /1  \fBrorb\fR      \fIrm8\fR
        !           740: d2 /1  \fBrorb\fR      \fIcl,rm8\fR
        !           741: c0 /1  \fBrorb\fR      \fIimm8,rm8\fR
        !           742: d1 /1  \fBrorw\fR      \fIcon1,rm16\fR
        !           743: d1 /1  \fBrorw\fR      \fIrm16\fR
        !           744: d3 /1  \fBrorw\fR      \fIcl,rm16\fR
        !           745: c1 /1  \fBrorw\fR      \fIimm8,rm16\fR
        !           746: d1 /1  \fBrorl\fR      \fIcon1,rm32\fR
        !           747: d1 /1  \fBrorl\fR      \fIrm32\fR
        !           748: d3 /1  \fBrorl\fR      \fIcl,rm32\fR
        !           749: c1 /1  \fBrorl\fR      \fIimm8,rm32\fR
        !           750: .sp \n(pDu
        !           751: 9e     \fBsahf\fR              Store AH into flags
        !           752: .sp \n(pDu
        !           753:        \fBsal\fR               Shift arithmetic left
        !           754: d0 /4  \fBsalb\fR      \fIcon1,rm8\fR
        !           755: d0 /4  \fBsalb\fR      \fIrm8\fR
        !           756: d2 /4  \fBsalb\fR      \fIcl,rm8\fR
        !           757: c0 /4  \fBsalb\fR      \fIimm8,rm8\fR
        !           758: d1 /4  \fBsalw\fR      \fIcon1,rm16\fR
        !           759: d1 /4  \fBsalw\fR      \fIrm16\fR
        !           760: d3 /4  \fBsalw\fR      \fIcl,rm16\fR
        !           761: c1 /4  \fBsalw\fR      \fIimm8,rm16\fR
        !           762: d1 /4  \fBsall\fR      \fIcon1,rm32\fR
        !           763: d1 /4  \fBsall\fR      \fIrm32\fR
        !           764: d3 /4  \fBsall\fR      \fIcl,rm32\fR
        !           765: c1 /4  \fBsall\fR      \fIimm8,rm32\fR
        !           766: .sp \n(pDu
        !           767:        \fBsar\fR               Shift arithmetic right
        !           768: d0 /7  \fBsarb\fR      \fIcon1,rm8\fR
        !           769: d0 /7  \fBsarb\fR      \fIrm8\fR
        !           770: d2 /7  \fBsarb\fR      \fIcl,rm8\fR
        !           771: c0 /7  \fBsarb\fR      \fIimm8,rm8\fR
        !           772: d1 /7  \fBsarw\fR      \fIcon1,rm16\fR
        !           773: d1 /7  \fBsarw\fR      \fIrm16\fR
        !           774: d3 /7  \fBsarw\fR      \fIcl,rm16\fR
        !           775: c1 /7  \fBsarw\fR      \fIimm8,rm16\fR
        !           776: d1 /7  \fBsarl\fR      \fIcon1,rm32\fR
        !           777: d1 /7  \fBsarl\fR      \fIrm32\fR
        !           778: d3 /7  \fBsarl\fR      \fIcl,rm32\fR
        !           779: c1 /7  \fBsarl\fR      \fIimm8,rm32\fR
        !           780: .sp \n(pDu
        !           781:        \fBsbb\fR               Subtract with borrow
        !           782: 83 /3  \fBsbbl\fR      \fIimm8s,rm32\fR
        !           783: 83 /3  \fBsbbw\fR      \fIimm8s,rm16\fR
        !           784: 1c     \fBsbbb\fR      \fIimm8,al\fR
        !           785: 1d     \fBsbbw\fR      \fIimm16,ax\fR
        !           786: 1d     \fBsbbl\fR      \fIimm32,eax\fR
        !           787: 1d     \fBsbbl\fR      \fIimm32\fR
        !           788: 80 /3  \fBsbbb\fR      \fIimm8,rm8\fR
        !           789: 81 /3  \fBsbbw\fR      \fIimm16,rm16\fR
        !           790: 81 /3  \fBsbbl\fR      \fIimm32,rm32\fR
        !           791: 1a /r  \fBsbbb\fR      \fIrm8,r8\fR
        !           792: 1b /r  \fBsbbw\fR      \fIrm16,r16\fR
        !           793: 1b /r  \fBsbbl\fR      \fIrm32,r32\fR
        !           794: 18 /r  \fBsbbb\fR      \fIr8,rm8\fR
        !           795: 19 /r  \fBsbbw\fR      \fIr16,rm16\fR
        !           796: 19 /r  \fBsbbl\fR      \fIr32,rm32\fR
        !           797: .sp \n(pDu
        !           798: ae     \fBscasb\fR             Compare string bytes
        !           799: af     \fBscasl\fR             Compare string longs
        !           800: af     \fBscasw\fR             Compare string words
        !           801:        
        !           802: 0F 97  \fBseta\fR      \fIrm8\fR       Set byte if above
        !           803: 0F 93  \fBsetae\fR     \fIrm8\fR       Set byte if above or equal
        !           804: 0F 92  \fBsetb\fR      \fIrm8\fR       Set byte if below
        !           805: 0F 96  \fBsetbe\fR     \fIrm8\fR       Set byte if below or equal
        !           806: 0F 92  \fBsetc\fR      \fIrm8\fR       Set byte if carry
        !           807: 0F 94  \fBsete\fR      \fIrm8\fR       Set byte if equal
        !           808: 0F 9f  \fBsetg\fR      \fIrm8\fR       Set byte if greater
        !           809: 0F 9d  \fBsetge\fR     \fIrm8\fR       Set byte if greater or equal
        !           810: 0F 9c  \fBsetl\fR      \fIrm8\fR       Set byte if less
        !           811: 0F 9e  \fBsetle\fR     \fIrm8\fR       Set byte if less or equal
        !           812: 0F 96  \fBsetna\fR     \fIrm8\fR       Set byte if not above
        !           813: 0F 92  \fBsetnae\fR    \fIrm8\fR       Set byte if not above or equal
        !           814: 0F 93  \fBsetnb\fR     \fIrm8\fR       Set byte if not below
        !           815: 0F 97  \fBsetnbe\fR    \fIrm8\fR       Set byte if not below or equal
        !           816: 0F 93  \fBsetnc\fR     \fIrm8\fR       Set byte if no carry
        !           817: 0F 95  \fBsetne\fR     \fIrm8\fR       Set byte if not equal
        !           818: 0F 9e  \fBsetng\fR     \fIrm8\fR       Set byte if not greater
        !           819: 0F 9c  \fBsetnge\fR    \fIrm8\fR       Set byte if not greater or equal
        !           820: 0F 9d  \fBsetnl\fR     \fIrm8\fR       Set byte if not less
        !           821: 0F 9f  \fBsetnle\fR    \fIrm8\fR       Set byte if not less or equal
        !           822: 0F 91  \fBsetno\fR     \fIrm8\fR       Set byte if not overflow
        !           823: 0F 9b  \fBsetnp\fR     \fIrm8\fR       Set byte if not parity
        !           824: 0F 99  \fBsetns\fR     \fIrm8\fR       Set byte if not sign
        !           825: 0F 95  \fBsetnz\fR     \fIrm8\fR       Set byte if not zero
        !           826: 0F 90  \fBseto\fR      \fIrm8\fR       Set byte if overflow
        !           827: 0F 9a  \fBsetp\fR      \fIrm8\fR       Set byte if parity
        !           828: 0F 9a  \fBsetpe\fR     \fIrm8\fR       Set byte if parity even
        !           829: 0F 9b  \fBsetpo\fR     \fIrm8\fR       Set byte if parity odd
        !           830: 0F 98  \fBsets\fR      \fIrm8\fR       Set byte if sign
        !           831: 0F 94  \fBsetz\fR      \fIrm8\fR       Set byte if zero
        !           832: 0F 94  \fBsetz\fR      \fIrm8\fR       Set byte if zero
        !           833:        
        !           834: 0F 01 /0       \fBsgdt\fR      \fImem32\fR     Store gdtr
        !           835: .sp \n(pDu
        !           836:        \fBshl\fR               Shift arithmetic left
        !           837: d0 /4  \fBshlb\fR      \fIcon1,rm8\fR
        !           838: d0 /4  \fBshlb\fR      \fIrm8\fR
        !           839: d2 /4  \fBshlb\fR      \fIcl,rm8\fR
        !           840: c0 /4  \fBshlb\fR      \fIimm8,rm8\fR
        !           841: d1 /4  \fBshlw\fR      \fIcon1,rm16\fR
        !           842: d1 /4  \fBshlw\fR      \fIrm16\fR
        !           843: d3 /4  \fBshlw\fR      \fIcl,rm16\fR
        !           844: c1 /4  \fBshlw\fR      \fIimm8,rm16\fR
        !           845: d1 /4  \fBshll\fR      \fIcon1,rm32\fR
        !           846: d1 /4  \fBshll\fR      \fIrm32\fR
        !           847: d3 /4  \fBshll\fR      \fIcl,rm32\fR
        !           848: c1 /4  \fBshll\fR      \fIimm8,rm32\fR
        !           849: .sp \n(pDu
        !           850:        \fBshld\fR              Shift double precision left
        !           851: 0F a4  \fBshldw\fR     \fIimm8,r16,rm16\fR
        !           852: 0F a4  \fBshldl\fR     \fIimm8,r32,rm32\fR
        !           853: 0F a5  \fBshldw\fR     \fIcl,r16,rm16\fR
        !           854: 0F a5  \fBshldl\fR     \fIcl,r32,rm32\fR
        !           855: .sp \n(pDu
        !           856:        \fBshr\fR               Shift right
        !           857: d0 /5  \fBshrb\fR      \fIcon1,rm8\fR
        !           858: d0 /5  \fBshrb\fR      \fIrm8\fR
        !           859: d2 /5  \fBshrb\fR      \fIcl,rm8\fR
        !           860: c0 /5  \fBshrb\fR      \fIimm8,rm8\fR
        !           861: d1 /5  \fBshrw\fR      \fIcon1,rm16\fR
        !           862: d1 /5  \fBshrw\fR      \fIrm16\fR
        !           863: d3 /5  \fBshrw\fR      \fIcl,rm16\fR
        !           864: c1 /5  \fBshrw\fR      \fIimm8,rm16\fR
        !           865: d1 /5  \fBshrl\fR      \fIcon1,rm32\fR
        !           866: d1 /5  \fBshrl\fR      \fIrm32\fR
        !           867: d3 /5  \fBshrl\fR      \fIcl,rm32\fR
        !           868: c1 /5  \fBshrl\fR      \fIimm8,rm32\fR
        !           869: .sp \n(pDu
        !           870:        \fBshrd\fR              Shift double precision right
        !           871: 0F ac  \fBshrdw\fR     \fIimm8,r16,rm16\fR
        !           872: 0F ac  \fBshrdl\fR     \fIimm8,r32,rm32\fR
        !           873: 0F ad  \fBshrdw\fR     \fIcl,r16,rm16\fR
        !           874: 0F ad  \fBshrdl\fR     \fIcl,r32,rm32\fR
        !           875: 0F ad  \fBshrdw\fR     \fIr16,rm16\fR
        !           876: 0F ad  \fBshrdl\fR     \fIr32,rm32\fR
        !           877: .sp \n(pDu
        !           878: 0F 01 /1       \fBsidt\fR      \fImem32\fR     Store idtr
        !           879: 0F 00 /0       \fBsldt\fR      \fIrm16\fR      Store ldtr to EA word
        !           880: 0F 01 /4       \fBsmsw\fR      \fIrm16\fR      Store machine status to EA word
        !           881: f9     \fBstc\fR               Set carry flag
        !           882: fd     \fBstd\fR               Clear direction flag
        !           883: fb     \fBsti\fR               Set interrupt flag
        !           884: aa     \fBstosb\fR             Store string byte
        !           885: ab     \fBstosl\fR             Store string long
        !           886: ab     \fBstosw\fR             Store string word
        !           887: 0F 00 /1       \fBstr\fR               Store task register
        !           888: .sp \n(pDu
        !           889:        \fBsub\fR               Subtract
        !           890: 83 /5  \fBsubl\fR      \fIimm8s,rm32\fR
        !           891: 83 /5  \fBsubw\fR      \fIimm8s,rm16\fR
        !           892: 2c     \fBsubb\fR      \fIimm8,al\fR
        !           893: 2d     \fBsubw\fR      \fIimm16,ax\fR
        !           894: 2d     \fBsubl\fR      \fIimm32,eax\fR
        !           895: 2d     \fBsubl\fR      \fIimm32\fR
        !           896: 80 /5  \fBsubb\fR      \fIimm8,rm8\fR
        !           897: 81 /5  \fBsubw\fR      \fIimm16,rm16\fR
        !           898: 81 /5  \fBsubl\fR      \fIimm32,rm32\fR
        !           899: 2a /r  \fBsubb\fR      \fIrm8,r8\fR
        !           900: 2b /r  \fBsubw\fR      \fIrm16,r16\fR
        !           901: 2b /r  \fBsubl\fR      \fIrm32,r32\fR
        !           902: 28 /r  \fBsubb\fR      \fIr8,rm8\fR
        !           903: 29 /r  \fBsubw\fR      \fIr16,rm16\fR
        !           904: 29 /r  \fBsubl\fR      \fIr32,rm32\fR
        !           905: .sp \n(pDu
        !           906:        \fBtest\fR              Logical compare
        !           907: a8     \fBtestb\fR     \fIimm8,al\fR
        !           908: a9     \fBtestw\fR     \fIimm16,ax\fR
        !           909: a9     \fBtestl\fR     \fIimm32,eax\fR
        !           910: a9     \fBtestl\fR     \fIimm32\fR
        !           911: f6 /0  \fBtestb\fR     \fIimm8,rm8\fR
        !           912: f7 /0  \fBtestw\fR     \fIimm16,rm16\fR
        !           913: f7 /0  \fBtestl\fR     \fIimm32,rm32\fR
        !           914: 84 /r  \fBtestb\fR     \fIr8,rm8\fR
        !           915: 85 /r  \fBtestw\fR     \fIr16,rm16\fR
        !           916: 85 /r  \fBtestl\fR     \fIr32,rm32\fR
        !           917: .sp \n(pDu
        !           918: 0F 00 /4       \fBverr\fR      \fIrm16\fR      Verify segment for read
        !           919: 0F 00 /5       \fBverw\fR      \fIrm16\fR      Verify segment for write
        !           920: 9b     \fBwait\fR              Wait for coprocessor
        !           921: .sp \n(pDu
        !           922:        \fBxchg\fR              Exchange register
        !           923: 90 +r  \fBxchgw\fR     \fIr16,ax\fR
        !           924: 90 +r  \fBxchgw\fR     \fIax,r16\fR
        !           925: 90 +r  \fBxchgl\fR     \fIr32,eax\fR
        !           926: 90 +r  \fBxchgl\fR     \fIr32\fR
        !           927: 90 +r  \fBxchgl\fR     \fIeax,r32\fR
        !           928: 86 /r  \fBxchgb\fR     \fIrm8,r8\fR
        !           929: 87 /r  \fBxchgw\fR     \fIrm16,r16\fR
        !           930: 87 /r  \fBxchgl\fR     \fIrm32,r32\fR
        !           931: 86 /r  \fBxchgb\fR     \fIr8,rm8\fR
        !           932: 87 /r  \fBxchgw\fR     \fIr16,rm16\fR
        !           933: 87 /r  \fBxchgl\fR     \fIr32,rm32\fR
        !           934: .sp \n(pDu
        !           935: d7     \fBxlat\fR              Table lookup translation
        !           936: d7     \fBxlatb\fR             Table lookup translation
        !           937: .sp \n(pDu
        !           938:        \fBxor\fR               Logical exclusive OR
        !           939: 83 /6  \fBxorl\fR      \fIimm8s,rm32\fR
        !           940: 83 /6  \fBxorw\fR      \fIimm8s,rm16\fR
        !           941: 34     \fBxorb\fR      \fIimm8,al\fR
        !           942: 35     \fBxorw\fR      \fIimm16,ax\fR
        !           943: 35     \fBxorl\fR      \fIimm32,eax\fR
        !           944: 35     \fBxorl\fR      \fIimm32\fR
        !           945: 80 /6  \fBxorb\fR      \fIimm8,rm8\fR
        !           946: 81 /6  \fBxorw\fR      \fIimm16,rm16\fR
        !           947: 81 /6  \fBxorl\fR      \fIimm32,rm32\fR
        !           948: 32 /r  \fBxorb\fR      \fIrm8,r8\fR
        !           949: 33 /r  \fBxorw\fR      \fIrm16,r16\fR
        !           950: 33 /r  \fBxorl\fR      \fIrm32,r32\fR
        !           951: 30 /r  \fBxorb\fR      \fIr8,rm8\fR
        !           952: 31 /r  \fBxorw\fR      \fIr16,rm16\fR
        !           953: 31 /r  \fBxorl\fR      \fIr32,rm32\fR

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.