public void LLDT_rmreg16 () { // LLDT SP // LLDT (R16.SP) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.LLDT (R16.SP); asm.Encode (memoryStream); byte [] target = new byte [] { 0xf, 0x0, 0xd4 }; Assert.IsTrue (CompareData (memoryStream, target), "'LLDT SP' failed."); }
public void LLDT_mem16 () { // LLDT Word [CS:EBX + EBX*2 + 0x12345678] // LLDT (new WordMemory(Seg.CS, R32.EBX, R32.EBX, 1, 0x12345678)) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.LLDT (new WordMemory (Seg.CS, R32.EBX, R32.EBX, 1, 0x12345678)); asm.Encode (memoryStream); byte [] target = new byte [] { 0x2e, 0xf, 0x0, 0x94, 0x5b, 0x78, 0x56, 0x34, 0x12 }; Assert.IsTrue (CompareData (memoryStream, target), "'LLDT Word [CS:EBX + EBX*2 + 0x12345678]' failed."); }