TTMath is a small library which allows one to perform arithmetic operations with big unsigned integer, big signed integer and big floating point numbers.
Go to file
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
constgen added: to Big<> class: support for NaN flag (Not a Number) 2009-05-26 23:13:22 +00:00
samples added: 'constgen' directory -- there is a program there to generate some constants used in ttmathbig.h 2009-03-12 20:54:46 +00:00
tests added: 'constgen' directory -- there is a program there to generate some constants used in ttmathbig.h 2009-03-12 20:54:46 +00:00
ttmath fixed: the parser didn't use characters for changing the base (# and &) 2009-12-05 18:13:53 +00:00
CHANGELOG fixed: the parser didn't use characters for changing the base (# and &) 2009-12-05 18:13:53 +00:00
COPYRIGHT changed: version of the library: 0.8.3 now 2009-04-06 16:34:19 +00:00
README updated: CHANGELOG and README 2009-10-25 16:42:41 +00:00
doxygen.cfg changed: version of the library: 0.8.3 now 2009-04-06 16:34:19 +00:00

README

A bignum library for C++

TTMath is a small library which allows one to perform arithmetic operations
with big unsigned integer, big signed integer and big floating point numbers.
It provides standard mathematical operations like adding, subtracting,
multiplying, dividing. With the library also goes a mathematical parser to
help you solving mathematical expressions.

TTMath is developed under the BSD licence which means that it is free for
both personal and commercial use.

The main goal of the library is to allow one to use big values in the same
way as the standard types like int or float. It does not need to be compiled
first because the whole library is written as the C++ templates. This means
only C++ developers can use this library and one thing they have to do is
to use 'include' directive of the preprocessor. How big the values can be
is set at compile time.

Author: Tomasz Sowa <t.sowa@ttmath.org>
WWW:    http://www.ttmath.org

Contributors:
Christian Kaiser <chk@online.de>