ADC() public method

ADC mem8,imm8
public ADC ( ByteMemory target, Byte source ) : void
target ByteMemory
source Byte
return void
コード例 #1
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_rmreg32_reg32 ()
	{
		// ADC ESI, EBX
		// ADC (R32.ESI, R32.EBX)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (R32.ESI, R32.EBX);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x11, 0xde };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC ESI, EBX' failed.");
	}
コード例 #2
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_rmreg8_imm8 ()
	{
		// ADC AH, 0xb
		// ADC (R8.AH, 0xb)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (R8.AH, 0xb);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x80, 0xd4, 0xb };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC AH, 0xb' failed.");
	}
コード例 #3
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_rmreg8_reg8 ()
	{
		// ADC DL, BH
		// ADC (R8.DL, R8.BH)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (R8.DL, R8.BH);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x10, 0xfa };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC DL, BH' failed.");
	}
コード例 #4
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_rmreg16_reg16 ()
	{
		// ADC DI, SI
		// ADC (R16.DI, R16.SI)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (R16.DI, R16.SI);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x66, 0x11, 0xf7 };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC DI, SI' failed.");
	}
コード例 #5
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_mem16_reg16 ()
	{
		// ADC [0x12345678], CX
		// ADC (new WordMemory(null, null, null, 0, 0x12345678), R16.CX)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (new WordMemory (null, null, null, 0, 0x12345678), R16.CX);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x66, 0x11, 0xd, 0x78, 0x56, 0x34, 0x12 };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC [0x12345678], CX' failed.");
	}
コード例 #6
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_mem32_imm8 ()
	{
		// ADC DWord [ES:EDX], 0xb
		// ADC (new DWordMemory(Seg.ES, R32.EDX, null, 0), 0xb)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (new DWordMemory (Seg.ES, R32.EDX, null, 0), 0xb);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x26, 0x83, 0x12, 0xb };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC DWord [ES:EDX], 0xb' failed.");
	}
コード例 #7
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_mem16_imm16 ()
	{
		// ADC Word [0x12345678], 0x3c4
		// ADC (new WordMemory(null, null, null, 0, 0x12345678), 0x3c4)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (new WordMemory (null, null, null, 0, 0x12345678), 0x3c4);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x66, 0x81, 0x15, 0x78, 0x56, 0x34, 0x12, 0xc4, 0x3 };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC Word [0x12345678], 0x3c4' failed.");
	}
コード例 #8
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_rmreg16_imm8 ()
	{
		// ADC DX, 0x3
		// ADC (R16.DX, 0x3)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (R16.DX, 0x3);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x66, 0x83, 0xd2, 0x3 };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC DX, 0x3' failed.");
	}
コード例 #9
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_reg32_mem32 ()
	{
		// ADC EBX, [EBX]
		// ADC (R32.EBX, new DWordMemory(null, R32.EBX, null, 0))
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (R32.EBX, new DWordMemory (null, R32.EBX, null, 0));
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x13, 0x1b };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC EBX, [EBX]' failed.");
	}
コード例 #10
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_mem8_imm8 ()
	{
		// ADC Byte [0x12345678], 0xd
		// ADC (new ByteMemory(null, null, null, 0, 0x12345678), 0xd)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (new ByteMemory (null, null, null, 0, 0x12345678), 0xd);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x80, 0x15, 0x78, 0x56, 0x34, 0x12, 0xd };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC Byte [0x12345678], 0xd' failed.");
	}
コード例 #11
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_reg16_mem16 ()
	{
		// ADC BX, [DS:ESP]
		// ADC (R16.BX, new WordMemory(Seg.DS, R32.ESP, null, 0))
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (R16.BX, new WordMemory (Seg.DS, R32.ESP, null, 0));
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x3e, 0x66, 0x13, 0x1c, 0x24 };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC BX, [DS:ESP]' failed.");
	}
コード例 #12
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_reg8_mem8 ()
	{
		// ADC BH, [0x12345678]
		// ADC (R8.BH, new ByteMemory(null, null, null, 0, 0x12345678))
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (R8.BH, new ByteMemory (null, null, null, 0, 0x12345678));
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x12, 0x3d, 0x78, 0x56, 0x34, 0x12 };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC BH, [0x12345678]' failed.");
	}
コード例 #13
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_mem32_reg32 ()
	{
		// ADC [ESI + EBP*1], EBX
		// ADC (new DWordMemory(null, R32.ESI, R32.EBP, 0), R32.EBX)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (new DWordMemory (null, R32.ESI, R32.EBP, 0), R32.EBX);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x11, 0x1c, 0x2e };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC [ESI + EBP*1], EBX' failed.");
	}
コード例 #14
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_rmreg16_imm16 ()
	{
		// ADC SP, 0x2c4
		// ADC (R16.SP, 0x2c4)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (R16.SP, 0x2c4);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x66, 0x81, 0xd4, 0xc4, 0x2 };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC SP, 0x2c4' failed.");
	}
コード例 #15
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_mem32_imm32 ()
	{
		// ADC DWord [EDI + EAX*4 + 0x12345678], 0x3e5b6ea
		// ADC (new DWordMemory(null, R32.EDI, R32.EAX, 2, 0x12345678), 0x3e5b6ea)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (new DWordMemory (null, R32.EDI, R32.EAX, 2, 0x12345678), 0x3e5b6ea);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x81, 0x94, 0x87, 0x78, 0x56, 0x34, 0x12, 0xea, 0xb6, 0xe5, 0x3 };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC DWord [EDI + EAX*4 + 0x12345678], 0x3e5b6ea' failed.");
	}
コード例 #16
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_rmreg32_imm32 ()
	{
		// ADC ESP, 0x7683f00
		// ADC (R32.ESP, 0x7683f00)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (R32.ESP, 0x7683f00);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x81, 0xd4, 0x0, 0x3f, 0x68, 0x7 };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC ESP, 0x7683f00' failed.");
	}
コード例 #17
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_mem16_imm8 ()
	{
		// ADC Word [FS:EBX + 0x12345678], 0x0
		// ADC (new WordMemory(Seg.FS, R32.EBX, null, 0, 0x12345678), 0x0)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (new WordMemory (Seg.FS, R32.EBX, null, 0, 0x12345678), 0x0);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x64, 0x66, 0x83, 0x93, 0x78, 0x56, 0x34, 0x12, 0x0 };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC Word [FS:EBX + 0x12345678], 0x0' failed.");
	}
コード例 #18
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_rmreg32_imm8 ()
	{
		// ADC EBP, 0x7
		// ADC (R32.EBP, 0x7)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (R32.EBP, 0x7);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x83, 0xd5, 0x7 };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC EBP, 0x7' failed.");
	}
コード例 #19
0
ファイル: X86.cs プロジェクト: sharpos/SharpOS
	public void ADC_mem8_reg8 ()
	{
		// ADC [ES:EDX], DL
		// ADC (new ByteMemory(Seg.ES, R32.EDX, null, 0), R8.DL)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.ADC (new ByteMemory (Seg.ES, R32.EDX, null, 0), R8.DL);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x26, 0x10, 0x12 };
		Assert.IsTrue (CompareData (memoryStream, target), "'ADC [ES:EDX], DL' failed.");
	}