public void AddChar_TEST() { DecInt dec = new DecInt("0"); dec.AddChar('2'); Assert.AreEqual("2", dec.StoredInput); Assert.AreEqual(2, dec.StoredNumber); dec.AddChar('5'); Assert.AreEqual("25", dec.StoredInput); Assert.AreEqual(25, dec.StoredNumber); dec.DeleteChar(); dec.AddChar('5'); Assert.AreEqual("25", dec.StoredInput); Assert.AreEqual(25, dec.StoredNumber); dec.AddChar('6'); Assert.AreEqual("25", dec.StoredInput); Assert.AreEqual(25, dec.StoredNumber); dec.StoredInput = "12"; dec.AddChar('8'); Assert.AreEqual("128", dec.StoredInput); Assert.AreEqual(128, dec.StoredNumber); dec.StoredNumber = 6; dec.AddChar('8'); Assert.AreEqual("68", dec.StoredInput); Assert.AreEqual(68, dec.StoredNumber); }
//this method is for negative integers only, not fractions or positive numbers public string decToBinNeg(long input, int size) { //decToBinNeg const int MATHEMATICALLY_NECESSARY_CORRECTION = 1; if (input == -1) //special case for when input is -1 {//if return new string(Constants.ONE, size); }//if else {//else //make input positive //mathmaticallyNecessaryCorrection = -1 uint inputAdjusted = (uint)Math.Abs(input) - MATHEMATICALLY_NECESSARY_CORRECTION; DecInt dec = new DecInt(inputAdjusted, size); ConverterToBin binConvert = new ConverterToBin(); BinInt unsignedBin = binConvert.Convert(dec); //convert the positive number to binary //arguement size affects whether you'll get 0010 vs 00000010 String inputAsPosBin = unsignedBin.StoredInput; string toBeReturned = NegateBin(inputAsPosBin); return toBeReturned; }//else }
public BinInt Convert(DecInt input) { long toBeConverted = input.StoredNumber; int bitNumber = input.allowedNumberOfBits; string result = FromDecIntPos(toBeConverted, bitNumber); BinInt output = new BinInt(result, bitNumber); return output; }
public DecInt Convert(BinInt input) { int size = input.allowedNumberOfBits; int convertFromBase = 2; string toBeConverted = input.StoredInput; uint result = ToDecFromIntPos(toBeConverted, convertFromBase); DecInt output = new DecInt(result,size); return output; }
public void DeleteChar_TEST() { DecInt dec = new DecInt("0"); dec.DeleteChar(); Assert.AreEqual("0", dec.StoredInput); Assert.AreEqual(0, dec.StoredNumber); dec.StoredInput = "5"; dec.DeleteChar(); Assert.AreEqual("0", dec.StoredInput); Assert.AreEqual(0, dec.StoredNumber); dec.StoredNumber = 255; dec.DeleteChar(); Assert.AreEqual("25", dec.StoredInput); Assert.AreEqual(25, dec.StoredNumber); }
public void ClearInput_TEST() { DecInt dec = new DecInt("0"); dec.ClearInput(); Assert.AreEqual("0", dec.StoredInput); Assert.AreEqual(0, dec.StoredNumber); dec.StoredInput = "5"; dec.ClearInput(); Assert.AreEqual("0", dec.StoredInput); Assert.AreEqual(0, dec.StoredNumber); dec.StoredNumber = 255; dec.ClearInput(); Assert.AreEqual("0", dec.StoredInput); Assert.AreEqual(0, dec.StoredNumber); }
public void ConvertFromBin() { dec = converter.Convert(bin); Assert.AreEqual("0", dec.StoredInput); bin.StoredInput = "00000001"; dec = converter.Convert(bin); Assert.AreEqual("1", dec.StoredInput); bin.StoredInput = "00000010"; dec = converter.Convert(bin); Assert.AreEqual("2", dec.StoredInput); bin.StoredInput = "00000011"; dec = converter.Convert(bin); Assert.AreEqual("3", dec.StoredInput); bin.StoredInput = "00000100"; dec = converter.Convert(bin); Assert.AreEqual("4", dec.StoredInput); bin.StoredInput = "00001000"; dec = converter.Convert(bin); Assert.AreEqual("8", dec.StoredInput); bin.StoredInput = "00010000"; dec = converter.Convert(bin); Assert.AreEqual("16", dec.StoredInput); bin.StoredInput = "00011111"; dec = converter.Convert(bin); Assert.AreEqual("31", dec.StoredInput); bin.StoredInput = "00100000"; dec = converter.Convert(bin); Assert.AreEqual("32", dec.StoredInput); bin.StoredInput = "10101010"; dec = converter.Convert(bin); Assert.AreEqual("170", dec.StoredInput); bin.StoredInput = "00101001"; dec = converter.Convert(bin); Assert.AreEqual("41", dec.StoredInput); bin.StoredInput = "01000000"; dec = converter.Convert(bin); Assert.AreEqual("64", dec.StoredInput); bin.StoredInput = "10000000"; dec = converter.Convert(bin); Assert.AreEqual("128", dec.StoredInput); bin.StoredInput = "11111111"; dec = converter.Convert(bin); Assert.AreEqual("255", dec.StoredInput); }
public SignedBinInt Convert(SignedDecInt signedDecInteger) { uint inputNumber = signedDecInteger.GetUnsignedNumber(); int size = signedDecInteger.allowedNumberOfBits; SignedBinInt signedBin; if (inputNumber >= 0) { DecInt dec = new DecInt(inputNumber,size); ConverterToBin binConvert = new ConverterToBin(); BinInt bin = binConvert.Convert(dec); signedBin = new SignedBinInt(Constants.POSITIVE, bin.StoredInput, bin.allowedNumberOfBits); return signedBin; } else { string negBinRepresentation = this.decToBinNeg(inputNumber, size); signedBin = new SignedBinInt(Constants.NEGATIVE, negBinRepresentation, size); } return signedBin; }
public void Initialization_TEST() { DecInt dec = new DecInt("0"); Assert.AreEqual(8, dec.allowedNumberOfBits); Assert.AreEqual("0", dec.StoredInput); Assert.AreEqual(0, dec.StoredNumber); dec = new DecInt(0); Assert.AreEqual("0", dec.StoredInput); Assert.AreEqual(0, dec.StoredNumber); dec = new DecInt(5); Assert.AreEqual("5", dec.StoredInput); Assert.AreEqual(5, dec.StoredNumber); dec = new DecInt("A"); Assert.AreEqual("0", dec.StoredInput); Assert.AreEqual(0, dec.StoredNumber); dec = new DecInt("Abc"); Assert.AreEqual("0", dec.StoredInput); Assert.AreEqual(0, dec.StoredNumber); dec = new DecInt("255"); Assert.AreEqual("255", dec.StoredInput); Assert.AreEqual(255, dec.StoredNumber); dec = new DecInt(255); Assert.AreEqual("255", dec.StoredInput); Assert.AreEqual(255, dec.StoredNumber); dec = new DecInt("-2"); Assert.AreEqual("2", dec.StoredInput); Assert.AreEqual(2, dec.StoredNumber); dec = new DecInt(256); Assert.AreEqual("0", dec.StoredInput); Assert.AreEqual(0, dec.StoredNumber); dec = new DecInt("256"); Assert.AreEqual("0", dec.StoredInput); Assert.AreEqual(0, dec.StoredNumber); dec = new DecInt(5,4); Assert.AreEqual(4, dec.allowedNumberOfBits); }
public void SetStoredInput_TEST() { DecInt dec = new DecInt("0"); dec.StoredInput = "5"; Assert.AreEqual("5", dec.StoredInput); Assert.AreEqual(5, dec.StoredNumber); dec.StoredInput = "256"; Assert.AreEqual("5", dec.StoredInput); Assert.AreEqual(5, dec.StoredNumber); dec.StoredInput = "AAA"; Assert.AreEqual("5", dec.StoredInput); Assert.AreEqual(5, dec.StoredNumber); dec.StoredNumber = 0; Assert.AreEqual("0", dec.StoredInput); Assert.AreEqual(0, dec.StoredNumber); dec.StoredInput = "-2"; Assert.AreEqual("2", dec.StoredInput); Assert.AreEqual(2, dec.StoredNumber); dec.StoredInput = "255"; Assert.AreEqual("255", dec.StoredInput); Assert.AreEqual(255, dec.StoredNumber); dec.StoredNumber = 0; Assert.AreEqual("0", dec.StoredInput); Assert.AreEqual(0, dec.StoredNumber); dec.StoredNumber = 255; Assert.AreEqual("255", dec.StoredInput); Assert.AreEqual(255, dec.StoredNumber); }
public void SetAllowedNumberOfBits() { DecInt dec = new DecInt("0"); dec.StoredNumber = 128; dec.allowedNumberOfBits = 4; Assert.AreEqual(4, dec.allowedNumberOfBits); Assert.AreEqual("0", dec.StoredInput); Assert.AreEqual(0, dec.StoredNumber); dec.allowedNumberOfBits = 8; Assert.AreEqual(8, dec.allowedNumberOfBits); dec.allowedNumberOfBits = -4; Assert.AreEqual(8, dec.allowedNumberOfBits); dec.allowedNumberOfBits = 1024; Assert.AreEqual(1024, dec.allowedNumberOfBits); }
public void SetUp() { converter = new ConverterToBin(); dec = new DecInt(""); }