public BinaryString GetArgByValue(string placeholder, string textDisplay) { if (LanguageDefinition.PlaceHolders.EERegisters.Contains(placeholder)) { var binary = LanguageDefinition.EERegisters .Find(r => r.TextDisplay == textDisplay).Binary; return(new BinaryString(binary)); } else if (LanguageDefinition.PlaceHolders.COP0Registers.Equals(placeholder)) { var binary = LanguageDefinition.COP0Registers .Find(r => r.TextDisplay == textDisplay).Binary; return(new BinaryString(binary)); } else if (LanguageDefinition.PlaceHolders.COP1Registers.Contains(placeholder)) { var binary = LanguageDefinition.COP1Registers .Find(r => r.TextDisplay == textDisplay).Binary; return(new BinaryString(binary)); } else if (LanguageDefinition.PlaceHolders.JType.Equals(placeholder)) { var hexString = new HexString(textDisplay); return(new BinaryString(Convert.ToString(hexString.ToInt() / 4, 2).PadLeft(26, '0'))); } else if (LanguageDefinition.PlaceHolders.IType.Contains(placeholder)) { return(new HexString(textDisplay).ToBinaryString()); } else if (LanguageDefinition.PlaceHolders.SA.Equals(placeholder)) { return(new BinaryString(Convert.ToString(int.Parse(textDisplay), 2).PadLeft(5, '0'))); } else if (LanguageDefinition.PlaceHolders.Code.Equals(placeholder)) { return(new BinaryString(Convert.ToString(int.Parse(textDisplay), 2).PadLeft(20, '0'))); } else { return(null); } }