namespace X86Disassembler.X86.Operands;
///
/// Base class for all memory operands in an x86 instruction
///
public abstract class MemoryOperand : Operand
{
///
/// Gets or sets the segment override (if any)
///
public string? SegmentOverride { get; set; }
///
/// Initializes a new instance of the MemoryOperand class
///
/// The size of the memory access in bits
/// Optional segment override
protected MemoryOperand(int size = 32, string? segmentOverride = null)
{
Size = size;
SegmentOverride = segmentOverride;
}
///
/// Gets the segment prefix string for display
///
/// The segment prefix string
protected string GetSegmentPrefix()
{
return SegmentOverride != null ? $"{SegmentOverride}:" : "";
}
}