public void STR_rmreg16 () { // STR DX // STR (R16.DX) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.STR (R16.DX); asm.Encode (memoryStream); byte [] target = new byte [] { 0x66, 0xf, 0x0, 0xca }; Assert.IsTrue (CompareData (memoryStream, target), "'STR DX' failed."); }
public void STR_mem16 () { // STR Word [FS:EBP + 0x12345678] // STR (new WordMemory(Seg.FS, R32.EBP, null, 0, 0x12345678)) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.STR (new WordMemory (Seg.FS, R32.EBP, null, 0, 0x12345678)); asm.Encode (memoryStream); byte [] target = new byte [] { 0x64, 0xf, 0x0, 0x8d, 0x78, 0x56, 0x34, 0x12 }; Assert.IsTrue (CompareData (memoryStream, target), "'STR Word [FS:EBP + 0x12345678]' failed."); }