BSR() public method

BSR reg16,rmreg16
public BSR ( R16Type target, R16Type source ) : void
target R16Type
source R16Type
return void
Example #1
0
	public void BSR_reg32_rmreg32 ()
	{
		// BSR EDX, EDI
		// BSR (R32.EDX, R32.EDI)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.BSR (R32.EDX, R32.EDI);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0xf, 0xbd, 0xd7 };
		Assert.IsTrue (CompareData (memoryStream, target), "'BSR EDX, EDI' failed.");
	}
Example #2
0
	public void BSR_reg32_mem32 ()
	{
		// BSR ESI, [EBX*4]
		// BSR (R32.ESI, new DWordMemory(null, null, R32.EBX, 2))
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.BSR (R32.ESI, new DWordMemory (null, null, R32.EBX, 2));
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0xf, 0xbd, 0x34, 0x9d, 0x0, 0x0, 0x0, 0x0 };
		Assert.IsTrue (CompareData (memoryStream, target), "'BSR ESI, [EBX*4]' failed.");
	}
Example #3
0
	public void BSR_reg16_rmreg16 ()
	{
		// BSR SI, AX
		// BSR (R16.SI, R16.AX)
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.BSR (R16.SI, R16.AX);
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x66, 0xf, 0xbd, 0xf0 };
		Assert.IsTrue (CompareData (memoryStream, target), "'BSR SI, AX' failed.");
	}
Example #4
0
	public void BSR_reg16_mem16 ()
	{
		// BSR DX, [FS:ECX + 0x12345678]
		// BSR (R16.DX, new WordMemory(Seg.FS, R32.ECX, null, 0, 0x12345678))
		MemoryStream memoryStream = new MemoryStream ();
		Assembly asm = new Assembly ();
		asm.BSR (R16.DX, new WordMemory (Seg.FS, R32.ECX, null, 0, 0x12345678));
		asm.Encode (memoryStream);
		byte [] target = new byte [] { 0x64, 0x66, 0xf, 0xbd, 0x91, 0x78, 0x56, 0x34, 0x12 };
		Assert.IsTrue (CompareData (memoryStream, target), "'BSR DX, [FS:ECX + 0x12345678]' failed.");
	}