Example #1
0
        /// <summary>
        /// Constructs the Unsigned from a value and a desired size.
        /// </summary>
        /// <param name="value">The value</param>
        /// <param name="size">The desired size (in bits)</param>
        private Unsigned(IntX value, int size)
        {
            Contract.Requires(size >= 0);
            Contract.Requires(
                value == null ||
                value.CompareTo(0) == 0 ||
                (value <= (((IntX)1) << size) - 1));

            _value = value;
            _size  = size;
        }
Example #2
0
        /// <summary>
        /// Constructs the Signed struct from a value and a desired size.
        /// </summary>
        /// <param name="value">The integer value</param>
        /// <param name="size">The integer size (in bits)</param>
        private Signed(IntX value, int size)
        {
            Contract.Requires(size >= 0);
            Contract.Requires(
                value == null ||
                value.CompareTo(0) == 0 ||
                (value <= (((IntX)1) << (size - 1)) - 1 &&
                value >= -(((IntX)1) << (size - 1))));

            _value = value;
            _size = size;
        }
Example #3
0
        public override int CompareTo(BigNum other)
        {
            BigInt o = E(other);

            return(_v.CompareTo(o._v));
        }