protected internal override void InternalWriteTo(BinaryWriter writer, IAssemblingContext context) { Int32 value = m_displacement; if (m_element != null) { value += (Int32)context.GetAbsoluteMemoryAddress(m_element); } writer.Write(value); }
internal override void WriteTo(BinaryWriter writer, IAssemblingContext context) { if (m_target != null) { context.GetPointerSize().WriteTo(writer, context.GetAbsoluteMemoryAddress(m_target)); } else { context.GetPointerSize().WriteTo(writer, 0); } }
protected internal override void InternalWriteTo(BinaryWriter writer, IAssemblingContext context) { UInt32 value = m_immediate; if (m_reference != null) { value += (UInt32)context.GetAbsoluteMemoryAddress(m_reference); } writer.Write(value); }
internal override void WriteTo(BinaryWriter writer, IAssemblingContext context) { if (m_target != null) { writer.Write((UInt32)context.GetAbsoluteMemoryAddress(m_target)); } else { writer.Write((UInt32)0); } }
private int GetDisplacementValue(IAssemblingContext context) { if (m_address.OffsetElement == null) { return(m_address.OffsetValue); } else { int reference = (int)context.GetAbsoluteMemoryAddress(m_address.OffsetElement); return(reference + m_address.OffsetValue); } }