/// <summary> /// XOR rmreg8,imm8 /// </summary> public void XOR (R8Type target, Byte source) { if (target == R8.AL) this.instructions.Add (new Instruction (true, string.Empty, string.Empty, "XOR_AL", "AL" + ", " + string.Format ("0x{0:x}", source), null, null, null, new UInt32 [] { source }, new string [] { "34", "ib" })); else { this.instructions.Add (new Instruction (true, string.Empty, string.Empty, "XOR", target.ToString () + ", " + string.Format ("0x{0:x}", source), null, target, null, new UInt32 [] { source }, new string [] { "80", "/6", "ib" })); } }
/// <summary> /// XOR rmreg8,reg8 /// </summary> public void XOR (R8Type target, R8Type source) { this.instructions.Add (new Instruction (true, string.Empty, string.Empty, "XOR", target.ToString () + ", " + source.ToString (), null, target, source, null, new string [] { "30", "/r" })); }
/// <summary> /// ADC reg8,mem8 /// </summary> public void ADC (R8Type target, ByteMemory source) { this.instructions.Add (new Instruction (true, string.Empty, string.Empty, "ADC", target.ToString () + ", " + source.ToString (), source, null, target, null, new string [] { "12", "/r" })); }
/// <summary> /// SHR rmreg8,imm8 /// </summary> public void SHR (R8Type target, Byte source) { if (source == 1) this.instructions.Add (new Instruction (true, string.Empty, string.Empty, "SHR__1", target.ToString () + ", " + "1", null, target, null, null, new string [] { "D0", "/5" })); else { this.instructions.Add (new Instruction (true, string.Empty, string.Empty, "SHR", target.ToString () + ", " + string.Format ("0x{0:x}", source), null, target, null, new UInt32 [] { source }, new string [] { "C0", "/5", "ib" })); } }
/// <summary> /// XCHG mem8,reg8 /// </summary> public void XCHG (ByteMemory target, R8Type source) { this.instructions.Add (new Instruction (true, string.Empty, string.Empty, "XCHG", target.ToString () + ", " + source.ToString (), target, null, source, null, new string [] { "86", "/r" })); }
/// <summary> /// SETZ rmreg8 /// </summary> public void SETZ (R8Type target) { this.instructions.Add (new Instruction (true, string.Empty, string.Empty, "SETZ", target.ToString (), null, target, null, null, new string [] { "0F", "94", "/0" })); }
/// <summary> /// SHR rmreg8,CL /// </summary> public void SHR__CL (R8Type target) { this.instructions.Add (new Instruction (true, string.Empty, string.Empty, "SHR__CL", target.ToString () + ", " + "CL", null, target, null, null, new string [] { "D2", "/5" })); }
/// <summary> /// NOT rmreg8 /// </summary> public void NOT (R8Type target) { this.instructions.Add (new Instruction (true, string.Empty, string.Empty, "NOT", target.ToString (), null, target, null, null, new string [] { "F6", "/2" })); }
/// <summary> /// MOVZX reg32,rmreg8 /// </summary> public void MOVZX (R32Type target, R8Type source) { this.instructions.Add (new Instruction (true, string.Empty, string.Empty, "MOVZX", target.ToString () + ", " + source.ToString (), null, source, target, null, new string [] { "o32", "0F", "B6", "/r" })); }
/// <summary> /// MOV reg8,imm8 /// </summary> public void MOV (R8Type target, Byte source) { this.instructions.Add (new Instruction (true, string.Empty, string.Empty, "MOV", target.ToString () + ", " + string.Format ("0x{0:x}", source), null, null, target, new UInt32 [] { source }, new string [] { "B0+r", "ib" })); }
/// <summary> /// INC rmreg8 /// </summary> public void INC (R8Type target) { this.instructions.Add (new Instruction (true, string.Empty, string.Empty, "INC", target.ToString (), null, target, null, null, new string [] { "FE", "/0" })); }
/// <summary> /// CMPXCHG rmreg8,reg8 /// </summary> public void CMPXCHG (R8Type target, R8Type source) { this.instructions.Add (new Instruction (true, string.Empty, string.Empty, "CMPXCHG", target.ToString () + ", " + source.ToString (), null, target, source, null, new string [] { "0F", "B0", "/r" })); }