コード例 #1
0
ファイル: Operand.cs プロジェクト: kohoutech/Dynamo
        public override string ToString()
        {
            String[] multFactor = { "", "*2", "*4", "*8" };
            String   result     = "";

            //the address part
            if (r1 != null)
            {
                result = r1.ToString();
            }

            if (r2 != null)
            {
                if (result.Length > 0)
                {
                    result += "+";
                }
                result = result + r2.ToString() + multFactor[(int)mult];
            }
            if ((imm != null) && (imm.val > 0))
            {
                String immStr = imm.ToString();
                if ((result.Length > 0) && (immStr[0] != '-'))
                {
                    result += "+";
                }
                result += immStr;
            }

            //the decorations
            result = "[" + result + "]";
            if ((seg != Segment.SEG.DS) || (r1 == null && r2 == null))
            {
                result = seg.ToString() + ":" + result;
            }
            result = getSizePtrStr(size) + result;
            return(result);
        }