public void ShiftTowardZero() { string AsString; using mpz_t a = new mpz_t("234052834524092854092874502983745029345723098457209305983434345"); AsString = a.ToString(); Assert.AreEqual("234052834524092854092874502983745029345723098457209305983434345", AsString); uint b = 40; using mpz_t c = a.RightShift(b); AsString = c.ToString(); Assert.AreEqual("212869812934598352597162832338422076050595113390235", AsString); using mpz_t d = a.RightShift(b, Rounding.TowardZero); AsString = d.ToString(); Assert.AreEqual("212869812934598352597162832338422076050595113390235", AsString); }