ttmath/ttmath
Tomasz Sowa 72052420dd fixed: the parser didn't use characters for changing the base (# and &)
those characters were skipped
         (this bug was introduced in 0.9.0)
added:   to Big::ToString() - additional rounding when conv.base_round is used
         if the value is not an integer we calculate how many valid digits there are
         after the comma operator (in conv.base radix) and then we skipped the rest
         digits, after skipping the base-rounding is made
         this helps to print values which have some last clear bits in the mantissa
         consider this 32 bit value:
         (binary)0.00011100001010001111010111000000000
         which has mantissa equal: (binary)11100001010001111010111000000000 (32 bits)
         previous the ToString() method gave: (decimal)0.10999999[...] 
         now we have: (decimal)0.11
added:   Parser::SetSmallToZero(bool zero) (default true)
         if true then the parser changes small values into zero
         small value means:
         - if the mantissa of the value consists only of one, two or three set bits
         - and these bits are next to each other
         - and the exponent is smaller than about 2 times the number of bits from the mantissa
         this helps to correctly calculate expressions such as: "0.80-3*0.34+0.22"
         now the parser gives zero (previous there was a value very closed to zero)
added:   UInt::FindLowestBit(uint & table_id, uint & index)
         /temporary version - asm version is missing /



git-svn-id: svn://ttmath.org/publicrep/ttmath/trunk@256 e52654a7-88a9-db11-a3e9-0013d4bc506e
2009-12-05 18:13:53 +00:00
..
ttmath.h fixed: Int::DivInt() should take parameters as 'sint' and not 'int' 2009-11-24 06:12:46 +00:00
ttmathbig.h fixed: the parser didn't use characters for changing the base (# and &) 2009-12-05 18:13:53 +00:00
ttmathint.h added: std::string UInt::ToString(uint b = 10) 2009-11-24 20:39:36 +00:00
ttmathmisc.h fixed: Factorial(const ValueType & x, ErrorCode * err = 0) 2009-09-17 23:18:11 +00:00
ttmathobjects.h fixed: Big::operator>> didn't correctly recognize values in scientific mode (with 'e' character) 2009-09-13 19:16:42 +00:00
ttmathparser.h fixed: the parser didn't use characters for changing the base (# and &) 2009-12-05 18:13:53 +00:00
ttmaththreads.h added: multithread support for Big<> class 2009-08-04 18:23:35 +00:00
ttmathtypes.h fixed: the parser didn't use characters for changing the base (# and &) 2009-12-02 11:38:17 +00:00
ttmathuint.h fixed: the parser didn't use characters for changing the base (# and &) 2009-12-05 18:13:53 +00:00
ttmathuint_noasm.h added: const char * UInt::LibTypeStr() 2009-11-24 20:15:46 +00:00
ttmathuint_x86.h added: const char * UInt::LibTypeStr() 2009-11-24 20:15:46 +00:00
ttmathuint_x86_64.h added: const char * UInt::LibTypeStr() 2009-11-24 20:15:46 +00:00
ttmathuint_x86_64_msvc.asm changed: small optimization in ttmath_subindexed_x64() 2009-09-20 20:10:29 +00:00