示例#1
0
        public void TestImulAxMemMismatch()
        {
            var tokens = new List <Token> {
                P[PET.IMUL], P[PET.Label1]
            };
            var command = new ImulCommand(tokens, OperandsSetType.AM);

            runExpectedExceptionTest(command);
        }
示例#2
0
        public void TestImulRegMemImMismatch001()
        {
            var tokens = new List <Token> {
                P[PET.IMUL], P[PET.BL], P[PET.Comma], P[PET.ByteMemCell], P[PET.Comma], P[PET.WordConst]
            };
            var command = new ImulCommand(tokens, OperandsSetType.RMI);

            runExpectedExceptionTest(command);
        }
示例#3
0
        public void TestImulRegRegImMismatch101()
        {
            var tokens = new List <Token> {
                P[PET.IMUL], P[PET.BX], P[PET.Comma], P[PET.CL], P[PET.Comma], P[PET.WordConst]
            };
            var command = new ImulCommand(tokens, OperandsSetType.RRI);

            runExpectedExceptionTest(command);
        }
示例#4
0
        public void TestImulRegRegMismatch01()
        {
            var tokens = new List <Token> {
                P[PET.IMUL], P[PET.BL], P[PET.Comma], P[PET.CX]
            };
            var command = new ImulCommand(tokens, OperandsSetType.RR);

            runExpectedExceptionTest(command);
        }
示例#5
0
        public void TestImulRegReg1()
        {
            var tokens = new List <Token> {
                P[PET.IMUL], P[PET.BX], P[PET.Comma], P[PET.CX]
            };
            var command = new ImulCommand(tokens, OperandsSetType.RR);

            runTest(command, new List <byte[]> {
                new byte[] { 0x0F, 0xAF, 0xD9 }
            });
        }
示例#6
0
        public void TestImulAxMem1()
        {
            var tokens = new List <Token> {
                P[PET.IMUL], P[PET.WordMemCell]
            };
            var command = new ImulCommand(tokens, OperandsSetType.AM);

            runTest(command, new List <byte[]> {
                new byte[] { 0xF7, 0x2E, 0x00, 0x00 }
            });
        }
示例#7
0
        public void TestImulRegMemIm111()
        {
            var tokens = new List <Token> {
                P[PET.IMUL], P[PET.BX], P[PET.Comma], P[PET.WordMemCell], P[PET.Comma], P[PET.WordConst]
            };
            var command = new ImulCommand(tokens, OperandsSetType.RMI);

            runTest(command, new List <byte[]> {
                new byte[] { 0x69, 0x1E, 0x00, 0x00, 0x10, 0x27 }
            });
        }
示例#8
0
        public void TestImulAxReg1()
        {
            var tokens = new List <Token> {
                P[PET.IMUL], P[PET.BX]
            };
            var command = new ImulCommand(tokens, OperandsSetType.AR);

            runTest(command, new List <byte[]> {
                new byte[] { 0xF7, 0xEB }
            });
        }
示例#9
0
        public void TestImulRegMemIm000()
        {
            var tokens = new List <Token> {
                P[PET.IMUL], P[PET.BH], P[PET.Comma], P[PET.ByteMemCell], P[PET.Comma], P[PET.ByteConst]
            };
            var command = new ImulCommand(tokens, OperandsSetType.RMI);

            runTest(command, new List <byte[]> {
                new byte[] { 0x69, 0x3E, 0x00, 0x00, 0x64 }
            });
        }
示例#10
0
        public void TestImulRegRegIm110()
        {
            var tokens = new List <Token> {
                P[PET.IMUL], P[PET.BX], P[PET.Comma], P[PET.CX], P[PET.Comma], P[PET.ByteConst]
            };
            var command = new ImulCommand(tokens, OperandsSetType.RRI);

            runTest(command, new List <byte[]> {
                new byte[] { 0x6B, 0xD9, 0x64 }
            });
        }
示例#11
0
        public void TestImulRegMem1()
        {
            var tokens = new List <Token> {
                P[PET.IMUL], P[PET.BX], P[PET.Comma], P[PET.WordMemCell]
            };
            var command = new ImulCommand(tokens, OperandsSetType.RM);

            runTest(command, new List <byte[]> {
                new byte[] { 0x0F, 0xAF, 0x1E, 0x00, 0x00 }
            });
        }