SHLD() public method

SHLD mem32,reg32,imm8
public SHLD ( DWordMemory target, R32Type source, Byte value ) : void
target DWordMemory
source R32Type
value Byte
return void
Example #1
0
	public void SHLD_rmreg32_reg32_imm8 ()
	{
		// SHLD ESP, EBP, 0xb
		// SHLD (R32.ESP, R32.EBP, 0xb)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.SHLD (R32.ESP, R32.EBP, 0xb);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0xf, 0xa4, 0xec, 0xb };
		Assert.IsTrue (CompareData (memoryStream, target), "'SHLD ESP, EBP, 0xb' failed.");
	}
Example #2
0
	public void SHLD_mem32_reg32_imm8 ()
	{
		// SHLD [0x12345678], EDI, 0x8
		// SHLD (new DWordMemory(null, null, null, 0, 0x12345678), R32.EDI, 0x8)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.SHLD (new DWordMemory (null, null, null, 0, 0x12345678), R32.EDI, 0x8);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0xf, 0xa4, 0x3d, 0x78, 0x56, 0x34, 0x12, 0x8 };
		Assert.IsTrue (CompareData (memoryStream, target), "'SHLD [0x12345678], EDI, 0x8' failed.");
	}
Example #3
0
	public void SHLD_rmreg16_reg16_imm8 ()
	{
		// SHLD BX, BP, 0xa
		// SHLD (R16.BX, R16.BP, 0xa)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.SHLD (R16.BX, R16.BP, 0xa);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x66, 0xf, 0xa4, 0xeb, 0xa };
		Assert.IsTrue (CompareData (memoryStream, target), "'SHLD BX, BP, 0xa' failed.");
	}
Example #4
0
	public void SHLD_mem16_reg16_imm8 ()
	{
		// SHLD [ECX + EDI*4 + 0x12345678], DX, 0x4
		// SHLD (new WordMemory(null, R32.ECX, R32.EDI, 2, 0x12345678), R16.DX, 0x4)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.SHLD (new WordMemory (null, R32.ECX, R32.EDI, 2, 0x12345678), R16.DX, 0x4);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x66, 0xf, 0xa4, 0x94, 0xb9, 0x78, 0x56, 0x34, 0x12, 0x4 };
		Assert.IsTrue (CompareData (memoryStream, target), "'SHLD [ECX + EDI*4 + 0x12345678], DX, 0x4' failed.");
	}