0
mirror of https://github.com/sampletext32/ParkanPlayground.git synced 2025-06-20 16:18:37 +03:00

Updated instruction handlers to use Type and StructuredOperands instead of Mnemonic and Operands

This commit is contained in:
bird_egop
2025-04-14 22:08:50 +03:00
parent c516e063e7
commit 685eeda03d
136 changed files with 3694 additions and 2584 deletions

View File

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