Volume 2B Instruction Set Reference N-Z (794102), страница 65
Текст из файла (страница 65)
Do not depend on the operation of undefined or reserved locations.Table A-10 shows the map if the ModR/M byte is outside the range of 00H-BFH. Here,the first digit of the ModR/M byte selects the table row and the second digit selectsthe column.Table A-10. D9 Opcode Map When ModR/M Byte is Outside 00H to BFH *0123C4567ST(0),ST(4)ST(0),ST(5)ST(0),ST(6)ST(0),ST(7)FTSTFXAMFXTRACTFPREM1FDECSTPFINCSTPCDEFST(0),ST(7)FLDST(0),ST(0)ST(0),ST(1)ST(0),ST(2)ST(0),ST(3)DFNOPEFCHSFABSFF2XM1FYL2XFPTANFPATAN89ABCFXCHST(0),ST(0)ST(0),ST(1)ST(0),ST(2)ST(0),ST(3)ST(0),ST(4)ST(0),ST(5)ST(0),ST(6)EFLD1FLDL2TFLDL2EFLDPIFLDLG2FLDLN2FLDZFFPREMFYL2XP1FSQRTFSINCOSFRNDINTFSCALEFSINDFCOSNOTES:* All blanks in all opcode maps are reserved and must not be used. Do not depend on the operation of undefined or reserved locations.Vol.
2B A-25OPCODE MAPA.5.2.3Escape Opcodes with DA as First ByteTable A-11 and A-12 contain maps for escape instruction opcodes that begin withDAH. Table A-11 shows the map if the ModR/M byte is in the range of 00H-BFH. Here,the value of bits 3-5 (the nnn field in Figure A-1) selects the instruction.Table A-11. DA Opcode Map When ModR/M Byte is Within 00H to BFH *nnn Field of ModR/M Byte000B001B010B011B100B101B110B111BFIADDdword-integerFIMULdword-integerFICOMdword-integerFICOMPdword-integerFISUBdword-integerFISUBRdword-integerFIDIVdword-integerFIDIVRdword-integerNOTES:* All blanks in all opcode maps are reserved and must not be used.
Do not depend on the operation of undefined or reserved locations.Table A-11 shows the map if the ModR/M byte is outside the range of 00H-BFH. Here,the first digit of the ModR/M byte selects the table row and the second digit selectsthe column.Table A-12. DA Opcode Map When ModR/M Byte is Outside 00H to BFH *0123C4567ST(0),ST(4)ST(0),ST(5)ST(0),ST(6)ST(0),ST(7)FCMOVBST(0),ST(0)ST(0),ST(1)ST(0),ST(2)ST(0),ST(3)DFCMOVBEST(0),ST(0)ST(0),ST(1)ST(0),ST(2)ST(0),ST(3)ST(0),ST(4)ST(0),ST(5)ST(0),ST(6)ST(0),ST(7)89ABCDEFST(0),ST(4)ST(0),ST(5)ST(0),ST(6)ST(0),ST(7)ST(0),ST(5)ST(0),ST(6)ST(0),ST(7)EFCFCMOVEST(0),ST(0)ST(0),ST(1)ST(0),ST(2)DST(0),ST(3)FCMOVUST(0),ST(0)EST(0),ST(1)ST(0),ST(2)ST(0),ST(3)ST(0),ST(4)FUCOMPPFNOTES:* All blanks in all opcode maps are reserved and must not be used.
Do not depend on the operation of undefined or reserved locations.A-26 Vol. 2BOPCODE MAPA.5.2.4Escape Opcodes with DB as First ByteTable A-13 and A-14 contain maps for escape instruction opcodes that begin withDBH. Table A-13 shows the map if the ModR/M byte is in the range of 00H-BFH. Here,the value of bits 3-5 (the nnn field in Figure A-1) selects the instruction.Table A-13. DB Opcode Map When ModR/M Byte is Within 00H to BFH *nnn Field of ModR/M Byte000B001B010B011BFILDdword-integerFISTTP dwordintegerFISTdword-integerFISTPdword-integer100B101B110BFLDextended-real111BFSTPextended-realNOTES:* All blanks in all opcode maps are reserved and must not be used.
Do not depend on the operation of undefined or reserved locations.Table A-14 shows the map if the ModR/M byte is outside the range of 00H-BFH. Here,the first digit of the ModR/M byte selects the table row and the second digit selectsthe column.Table A-14. DB Opcode Map When ModR/M Byte is Outside 00H to BFH *0123ST(0),ST(0)ST(0),ST(1)ST(0),ST(2)ST(0),ST(3)C4567ST(0),ST(4)ST(0),ST(5)ST(0),ST(6)ST(0),ST(7)ST(0),ST(5)ST(0),ST(6)ST(0),ST(7)FCMOVNBDFCMOVNBEST(0),ST(0)ST(0),ST(1)EST(0),ST(2)ST(0),ST(3)FCLEXFINITFST(0),ST(4)FCOMIST(0),ST(0)ST(0),ST(1)ST(0),ST(2)ST(0),ST(3)ST(0),ST(4)ST(0),ST(5)ST(0),ST(6)ST(0),ST(7)89ABCDEFST(0),ST(0)ST(0),ST(1)ST(0),ST(2)ST(0),ST(3)ST(0),ST(4)ST(0),ST(5)ST(0),ST(6)ST(0),ST(7)ST(0),ST(5)ST(0),ST(6)ST(0),ST(7)ST(0),ST(5)ST(0),ST(6)ST(0),ST(7)CFCMOVNEDFCMOVNUST(0),ST(0)ST(0),ST(1)ST(0),ST(2)EST(0),ST(3)ST(0),ST(4)FUCOMIST(0),ST(0)ST(0),ST(1)ST(0),ST(2)ST(0),ST(3)ST(0),ST(4)FNOTES:* All blanks in all opcode maps are reserved and must not be used.
Do not depend on the operation of undefined or reserved locations.Vol. 2B A-27OPCODE MAPA.5.2.5Escape Opcodes with DC as First ByteTable A-15 and A-16 contain maps for escape instruction opcodes that begin withDCH. Table A-15 shows the map if the ModR/M byte is in the range of 00H-BFH. Here,the value of bits 3-5 (the nnn field in Figure A-1) selects the instruction.Table A-15. DC Opcode Map When ModR/M Byte is Within 00H to BFH *nnn Field of ModR/M Byte (refer to Figure A-1)000B001B010B011B100B101B110B111BFADD doublerealFMUL doublerealFCOMdouble-realFCOMPdouble-realFSUB doublerealFSUBRdouble-realFDIV doublerealFDIVRdouble-realNOTES:* All blanks in all opcode maps are reserved and must not be used. Do not depend on the operation of undefined or reserved locations.Table A-16 shows the map if the ModR/M byte is outside the range of 00H-BFH.
Inthis case the first digit of the ModR/M byte selects the table row and the second digitselects the column.Table A-16. DC Opcode Map When ModR/M Byte is Outside 00H to BFH *0123C4567ST(4),ST(0)ST(5),ST(0)ST(6),ST(0)ST(7),ST(0)ST(5),ST(0)ST(6),ST(0)ST(7),ST(0)FADDST(0),ST(0)ST(1),ST(0)ST(2),ST(0)ST(3),ST(0)DEFSUBRST(0),ST(0)ST(1),ST(0)ST(2),ST(0)ST(3),ST(0)FST(4),ST(0)FDIVRST(0),ST(0)ST(1),ST(0)ST(2),ST(0)ST(3),ST(0)ST(4),ST(0)ST(5),ST(0)ST(6),ST(0)ST(7),ST(0)89ABCDEFST(4),ST(0)ST(5),ST(0)ST(6),ST(0)ST(7),ST(0)ST(5),ST(0)ST(6),ST(0)ST(7),ST(0)ST(5),ST(0)ST(6),ST(0)ST(7),ST(0)CFMULST(0),ST(0)ST(1),ST(0)ST(2),ST(0)ST(3),ST(0)DEFSUBST(0),ST(0)ST(1),ST(0)ST(2),ST(0)FST(3),ST(0)ST(4),ST(0)FDIVST(0),ST(0)ST(1),ST(0)ST(2),ST(0)ST(3),ST(0)ST(4),ST(0)NOTES:* All blanks in all opcode maps are reserved and must not be used. Do not depend on the operation of undefined or reserved locations.A-28 Vol.
2BOPCODE MAPA.5.2.6Escape Opcodes with DD as First ByteTable A-17 and A-18 contain maps for escape instruction opcodes that begin withDDH. Table A-17 shows the map if the ModR/M byte is in the range of 00H-BFH. Here,the value of bits 3-5 (the nnn field in Figure A-1) selects the instruction.Table A-17. DD Opcode Map When ModR/M Byte is Within 00H to BFH *nnn Field of ModR/M Byte000B001B010B011B100BFLD doublerealFISTTPinteger64FST doublerealFSTP doublerealFRSTOR98/108bytes101B110B111BFSAVE98/108bytesFSTSW 2bytesNOTES:* All blanks in all opcode maps are reserved and must not be used.
Do not depend on the operation of undefined or reserved locations.Table A-18 shows the map if the ModR/M byte is outside the range of 00H-BFH. Thefirst digit of the ModR/M byte selects the table row and the second digit selects thecolumn.Table A-18. DD Opcode Map When ModR/M Byte is Outside 00H to BFH *0123C4567ST(4)ST(5)ST(6)ST(7)ST(4)ST(5)ST(6)ST(7)FFREEST(0)ST(1)ST(2)ST(3)DFSTST(0)ST(1)ST(2)ST(3)ST(0),ST(0)ST(1),ST(0)ST(2),ST(0)ST(3),ST(0)ST(4),ST(0)ST(5),ST(0)ST(6),ST(0)ST(7),ST(0)89ABCDEFST(0)ST(1)ST(2)ST(3)ST(4)ST(5)ST(6)ST(7)ST(0)ST(1)ST(2)ST(3)ST(4)ST(5)ST(6)ST(7)EFUCOMFCDFSTPEFUCOMPFNOTES:* All blanks in all opcode maps are reserved and must not be used.
Do not depend on the operation of undefined or reserved locations.Vol. 2B A-29OPCODE MAPA.5.2.7Escape Opcodes with DE as First ByteTable A-19 and A-20 contain opcode maps for escape instruction opcodes that beginwith DEH. Table A-19 shows the opcode map if the ModR/M byte is in the range of00H-BFH. In this case, the value of bits 3-5 (the nnn field in Figure A-1) selects theinstruction.Table A-19. DE Opcode Map When ModR/M Byte is Within 00H to BFH *nnn Field of ModR/M Byte000B001B010B011B100B101B110B111BFIADDword-integerFIMULword-integerFICOMword-integerFICOMP wordintegerFISUBword-integerFISUBR wordintegerFIDIVword-integerFIDIVRword-integerNOTES:* All blanks in all opcode maps are reserved and must not be used.
Do not depend on the operation of undefined or reserved locations.Table A-20 shows the opcode map if the ModR/M byte is outside the range of00H-BFH. The first digit of the ModR/M byte selects the table row and the seconddigit selects the column.Table A-20. DE Opcode Map When ModR/M Byte is Outside 00H to BFH *0123C4567ST(4),ST(0)ST(5),ST(0)ST(6),ST(0)ST(7),ST(0)ST(5),ST(0)ST(6),ST(0)ST(7),ST(0)FADDPST(0),ST(0)ST(1),ST(0)ST(2),ST(0)ST(3),ST(0)DEFSUBRPST(0),ST(0)ST(1),ST(0)ST(2),ST(0)ST(3),ST(0)FST(4),ST(0)FDIVRPST(0),ST(0)ST(1),ST(0)ST(2),ST(0)ST(3),ST(0)ST(4),ST(0)ST(5),ST(0)ST(6),ST(0)ST(7),ST(0)89ABCDEFST(4),ST(0)ST(5),ST(0)ST(6),ST(0)ST(7),ST(0)ST(5),ST(0)ST(6),ST(0)ST(7),ST(0)ST(5),ST(0)ST(6),ST(0)ST(7),ST(0)CFMULPST(0),ST(0)DST(1),ST(0)ST(2),ST(0)ST(3),ST(0)FCOMPPEFSUBPST(0),ST(0)ST(1),ST(0)ST(2),ST(0)FST(3),ST(0)ST(4),ST(0)FDIVPST(0),ST(0)ST(1),ST(0)ST(2),ST(0).ST(3),ST(0)ST(4),ST(0)NOTES:* All blanks in all opcode maps are reserved and must not be used.
Do not depend on the operation of undefined or reserved locations.A-30 Vol. 2BOPCODE MAPA.5.2.8Escape Opcodes with DF As First ByteTable A-21 and A-22 contain the opcode maps for escape instruction opcodes thatbegin with DFH. Table A-21 shows the opcode map if the ModR/M byte is in the rangeof 00H-BFH.
Here, the value of bits 3-5 (the nnn field in Figure A-1) selects theinstruction.Table A-21. DF Opcode Map When ModR/M Byte is Within 00H to BFH *nnn Field of ModR/M Byte000B001B010B011B100BFILDword-integerFISTTPword-integerFISTword-integerFISTPword-integerFBLD packedBCD101B110BFILDFBSTP packedqword-integerBCD111BFISTPqword-integerNOTES:* All blanks in all opcode maps are reserved and must not be used.