![]() |
TTMath
0.9.4
C++ bignum library
|
Big implements the floating point numbers. More...
#include <ttmathbig.h>
Public Member Functions | |
uint | CheckCarry (uint c) |
uint | Standardizing () |
void | ClearInfoBit (unsigned char bit) |
void | SetInfoBit (unsigned char bit) |
bool | IsInfoBit (unsigned char bit) const |
void | SetZero () |
void | SetOne () |
void | Set05 () |
void | SetNan () |
void | SetZeroNan () |
void | Swap (Big< exp, man > &ss2) |
void | SetPi () |
void | Set05Pi () |
void | Set2Pi () |
void | SetE () |
void | SetLn2 () |
void | SetLn10 () |
void | SetMax () |
void | SetMin () |
bool | IsZero () const |
bool | IsSign () const |
bool | IsNan () const |
void | Abs () |
void | Sgn () |
void | SetSign () |
void | ChangeSign () |
uint | Add (Big< exp, man > ss2, bool round=true, bool adding=true) |
uint | Sub (const Big< exp, man > &ss2, bool round=true) |
uint | BitAnd (Big< exp, man > ss2) |
uint | BitOr (Big< exp, man > ss2) |
uint | BitXor (Big< exp, man > ss2) |
uint | MulUInt (uint ss2) |
uint | MulInt (sint ss2) |
uint | Mul (const Big< exp, man > &ss2, bool round=true) |
uint | Div (const Big< exp, man > &ss2, bool round=true) |
uint | Mod (const Big< exp, man > &ss2) |
uint | Mod2 () const |
template<uint pow_size> | |
uint | Pow (UInt< pow_size > pow) |
template<uint pow_size> | |
uint | Pow (Int< pow_size > pow) |
uint | PowUInt (Big< exp, man > pow) |
uint | PowInt (const Big< exp, man > &pow) |
uint | PowFrac (const Big< exp, man > &pow) |
uint | Pow (const Big< exp, man > &pow) |
uint | Sqrt () |
uint | Exp (const Big< exp, man > &x) |
uint | Ln (const Big< exp, man > &x) |
uint | Log (const Big< exp, man > &x, const Big< exp, man > &base) |
template<uint another_exp, uint another_man> | |
uint | FromBig (const Big< another_exp, another_man > &another) |
uint | ToUInt () const |
uint | ToUInt (uint &result) const |
sint | ToInt () const |
uint | ToInt (uint &result) const |
uint | ToInt (sint &result) const |
template<uint int_size> | |
uint | ToUInt (UInt< int_size > &result) const |
template<uint int_size> | |
uint | ToInt (UInt< int_size > &result) const |
template<uint int_size> | |
uint | ToInt (Int< int_size > &result) const |
uint | FromUInt (uint value) |
uint | FromInt (uint value) |
uint | FromInt (sint value) |
uint | FromDouble (double value) |
uint | FromFloat (float value) |
double | ToDouble () const |
float | ToFloat () const |
uint | ToFloat (float &result) const |
uint | ToDouble (double &result) const |
Big< exp, man > & | operator= (sint value) |
Big< exp, man > & | operator= (uint value) |
Big< exp, man > & | operator= (float value) |
Big< exp, man > & | operator= (double value) |
Big (sint value) | |
Big (uint value) | |
Big (double value) | |
Big (float value) | |
uint | ToUInt (unsigned int &result) const |
uint | ToInt (unsigned int &result) const |
uint | ToInt (signed int &result) const |
uint | FromUInt (unsigned int value) |
uint | FromInt (unsigned int value) |
uint | FromInt (signed int value) |
Big< exp, man > & | operator= (unsigned int value) |
Big (unsigned int value) | |
Big< exp, man > & | operator= (signed int value) |
Big (signed int value) | |
template<uint int_size> | |
uint | FromUInt (UInt< int_size > value) |
template<uint int_size> | |
uint | FromInt (const UInt< int_size > &value) |
template<uint int_size> | |
uint | FromInt (Int< int_size > value) |
template<uint int_size> | |
Big< exp, man > & | operator= (const Int< int_size > &value) |
template<uint int_size> | |
Big (const Int< int_size > &value) | |
template<uint int_size> | |
Big< exp, man > & | operator= (const UInt< int_size > &value) |
template<uint int_size> | |
Big (const UInt< int_size > &value) | |
template<uint another_exp, uint another_man> | |
Big< exp, man > & | operator= (const Big< another_exp, another_man > &value) |
template<uint another_exp, uint another_man> | |
Big (const Big< another_exp, another_man > &value) | |
Big () | |
~Big () | |
Big< exp, man > & | operator= (const Big< exp, man > &value) |
Big (const Big< exp, man > &value) | |
uint | ToString (std::string &result, uint base=10, bool scient=false, sint scient_from=15, sint round=-1, bool trim_zeroes=true, char comma='.') const |
uint | ToString (std::string &result, const Conv &conv) const |
std::string | ToString (const Conv &conv) const |
std::string | ToString (uint base=10) const |
uint | ToString (std::wstring &result, uint base=10, bool scient=false, sint scient_from=15, sint round=-1, bool trim_zeroes=true, wchar_t comma='.') const |
uint | ToString (std::wstring &result, const Conv &conv) const |
std::wstring | ToWString (const Conv &conv) const |
std::wstring | ToWString (uint base=10) const |
uint | FromString (const char *source, uint base=10, const char **after_source=0, bool *value_read=0) |
uint | FromString (const char *source, const Conv &conv, const char **after_source=0, bool *value_read=0) |
uint | FromString (const std::string &string, uint base=10, const char **after_source=0, bool *value_read=0) |
uint | FromString (const std::string &string, const Conv &conv, const char **after_source=0, bool *value_read=0) |
uint | FromString (const wchar_t *source, uint base=10, const wchar_t **after_source=0, bool *value_read=0) |
uint | FromString (const wchar_t *source, const Conv &conv, const wchar_t **after_source=0, bool *value_read=0) |
uint | FromString (const std::wstring &string, uint base=10, const wchar_t **after_source=0, bool *value_read=0) |
uint | FromString (const std::wstring &string, const Conv &conv, const wchar_t **after_source=0, bool *value_read=0) |
Big (const char *string) | |
Big (const std::string &string) | |
Big< exp, man > & | operator= (const char *string) |
Big< exp, man > & | operator= (const std::string &string) |
Big (const wchar_t *string) | |
Big (const std::wstring &string) | |
Big< exp, man > & | operator= (const wchar_t *string) |
Big< exp, man > & | operator= (const std::wstring &string) |
bool | SmallerWithoutSignThan (const Big< exp, man > &ss2) const |
bool | GreaterWithoutSignThan (const Big< exp, man > &ss2) const |
bool | EqualWithoutSign (const Big< exp, man > &ss2) const |
bool | operator< (const Big< exp, man > &ss2) const |
bool | operator== (const Big< exp, man > &ss2) const |
bool | operator> (const Big< exp, man > &ss2) const |
bool | operator>= (const Big< exp, man > &ss2) const |
bool | operator<= (const Big< exp, man > &ss2) const |
bool | operator!= (const Big< exp, man > &ss2) const |
Big< exp, man > | operator- () const |
Big< exp, man > | operator- (const Big< exp, man > &ss2) const |
Big< exp, man > & | operator-= (const Big< exp, man > &ss2) |
Big< exp, man > | operator+ (const Big< exp, man > &ss2) const |
Big< exp, man > & | operator+= (const Big< exp, man > &ss2) |
Big< exp, man > | operator* (const Big< exp, man > &ss2) const |
Big< exp, man > & | operator*= (const Big< exp, man > &ss2) |
Big< exp, man > | operator/ (const Big< exp, man > &ss2) const |
Big< exp, man > & | operator/= (const Big< exp, man > &ss2) |
Big< exp, man > & | operator++ () |
Big< exp, man > | operator++ (int) |
Big< exp, man > & | operator-- () |
Big< exp, man > | operator-- (int) |
Big< exp, man > | operator & (const Big< exp, man > &p2) const |
Big< exp, man > & | operator &= (const Big< exp, man > &p2) |
Big< exp, man > | operator| (const Big< exp, man > &p2) const |
Big< exp, man > & | operator|= (const Big< exp, man > &p2) |
Big< exp, man > | operator^ (const Big< exp, man > &p2) const |
Big< exp, man > & | operator^= (const Big< exp, man > &p2) |
void | SkipFraction () |
void | RemainFraction () |
bool | IsInteger () const |
uint | Round () |
Static Public Member Functions | |
static const char * | LibTypeStr () |
static LibTypeCode | LibType () |
Data Fields | |
Int< exp > | exponent |
UInt< man > | mantissa |
unsigned char | info |
Friends | |
class | Big< exp-1, man > |
std::ostream & | operator<< (std::ostream &s, const Big< exp, man > &l) |
std::wostream & | operator<< (std::wostream &s, const Big< exp, man > &l) |
std::istream & | operator>> (std::istream &s, Big< exp, man > &l) |
std::wistream & | operator>> (std::wistream &s, Big< exp, man > &l) |
Big implements the floating point numbers.
Definition at line 63 of file ttmathbig.h.
ttmath::Big< exp, man >::Big | ( | sint | value | ) |
a constructor for converting 'sint' to this class
Definition at line 3145 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromInt().
ttmath::Big< exp, man >::Big | ( | uint | value | ) |
a constructor for converting 'uint' to this class
Definition at line 3153 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromUInt().
ttmath::Big< exp, man >::Big | ( | double | value | ) |
a constructor for converting 'double' to this class
Definition at line 3162 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromDouble().
ttmath::Big< exp, man >::Big | ( | float | value | ) |
a constructor for converting 'float' to this class
Definition at line 3171 of file ttmathbig.h.
References ttmath::Big< exp, man >::Big(), ttmath::Big< exp, man >::FromFloat(), ttmath::Big< exp, man >::FromInt(), ttmath::Big< exp, man >::FromUInt(), ttmath::Big< exp, man >::operator=(), ttmath::Big< exp, man >::SetSign(), ttmath::UInt< value_size >::SetZero(), ttmath::Big< exp, man >::SetZero(), ttmath::Big< exp, man >::Standardizing(), ttmath::UInt< value_size >::table, ttmath::Int< value_size >::ToInt(), ttmath::Big< exp, man >::ToInt(), ttmath::Big< exp, man >::ToUInt(), ttmath::UInt< value_size >::ToUInt(), and TTMATH_BITS_PER_UINT.
ttmath::Big< exp, man >::Big | ( | unsigned int | value | ) |
a constructor for converting 32 bit unsigned int to this class this constructor is created only on a 64bit platform***
Definition at line 3452 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromUInt().
ttmath::Big< exp, man >::Big | ( | signed int | value | ) |
a constructor for converting 32 bit signed int to this class this constructor is created only on a 64bit platform***
Definition at line 3474 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromInt(), ttmath::UInt< value_size >::table, and TTMATH_BITS_PER_UINT.
ttmath::Big< exp, man >::Big | ( | const Int< int_size > & | value | ) |
a constructor for converting from 'Int<int_size>' to this class
Definition at line 3580 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromInt().
ttmath::Big< exp, man >::Big | ( | const UInt< int_size > & | value | ) |
a constructor for converting from 'UInt<int_size>' to this class
Definition at line 3602 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromUInt().
ttmath::Big< exp, man >::Big | ( | const Big< another_exp, another_man > & | value | ) |
a constructor for converting from 'Big<another_exp, another_man>' to this class
Definition at line 3624 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromBig().
ttmath::Big< exp, man >::Big | ( | ) |
a default constructor
by default we don't set any of the members to zero only NaN flag is set
if you want the mantissa and exponent to be set to zero define TTMATH_BIG_DEFAULT_CLEAR macro (useful for debug purposes)
Definition at line 3640 of file ttmathbig.h.
References ttmath::Big< exp, man >::SetZeroNan(), and TTMATH_BIG_NAN.
Referenced by ttmath::Big< exp, man >::Big().
ttmath::Big< exp, man >::~Big | ( | ) |
ttmath::Big< exp, man >::Big | ( | const Big< exp, man > & | value | ) |
a constructor for copying from another object of this class
Definition at line 3681 of file ttmathbig.h.
References ttmath::Big< exp, man >::operator=().
ttmath::Big< exp, man >::Big | ( | const char * | string | ) |
a constructor for converting a string into this class
Definition at line 5303 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromString().
ttmath::Big< exp, man >::Big | ( | const std::string & | string | ) |
a constructor for converting a string into this class
Definition at line 5312 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromString().
ttmath::Big< exp, man >::Big | ( | const wchar_t * | string | ) |
a constructor for converting a string into this class
Definition at line 5346 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromString().
ttmath::Big< exp, man >::Big | ( | const std::wstring & | string | ) |
a constructor for converting a string into this class
Definition at line 5355 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromString().
void ttmath::Big< exp, man >::Abs | ( | ) |
this method clears the sign (there'll be an absolute value)
samples
Definition at line 682 of file ttmathbig.h.
References ttmath::Big< exp, man >::ClearInfoBit(), and TTMATH_BIG_SIGN.
Referenced by ttmath::Big< exp, man >::Exp(), ttmath::Big< exp, man >::Mul(), ttmath::Big< exp, man >::MulInt(), and ttmath::Big< exp, man >::PowUInt().
uint ttmath::Big< exp, man >::Add | ( | Big< exp, man > | ss2, |
bool | round = true , |
||
bool | adding = true |
||
) |
Addition this = this + ss2
it returns carry if the sum is too big
Definition at line 930 of file ttmathbig.h.
References ttmath::Int< value_size >::Abs(), ttmath::Big< exp, man >::ChangeSign(), ttmath::Big< exp, man >::CheckCarry(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::Big< exp, man >::SmallerWithoutSignThan(), ttmath::Big< exp, man >::Standardizing(), ttmath::Int< value_size >::Sub(), and ttmath::Big< exp, man >::Swap().
Referenced by ttmath::Big< exp, man >::Exp(), ttmath::Big< exp, man >::FromString(), ttmath::Big< exp, man >::Ln(), ttmath::Big< exp, man >::operator-(), ttmath::Big< exp, man >::Round(), ttmath::Big< exp, man >::Sqrt(), and ttmath::Big< exp, man >::Sub().
uint ttmath::Big< exp, man >::BitAnd | ( | Big< exp, man > | ss2 | ) |
bitwise AND
this and ss2 must be >= 0
return values:
Definition at line 994 of file ttmathbig.h.
References ttmath::Int< value_size >::Abs(), ttmath::UInt< value_size >::BitAnd(), ttmath::Big< exp, man >::CheckCarry(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::UInt< value_size >::Rcr(), ttmath::Big< exp, man >::SetNan(), ttmath::Big< exp, man >::SetZero(), ttmath::Big< exp, man >::SmallerWithoutSignThan(), ttmath::Big< exp, man >::Standardizing(), ttmath::Int< value_size >::Sub(), ttmath::Big< exp, man >::Swap(), ttmath::Int< value_size >::ToInt(), and TTMATH_BITS_PER_UINT.
Referenced by ttmath::Big< exp, man >::operator &().
uint ttmath::Big< exp, man >::BitOr | ( | Big< exp, man > | ss2 | ) |
bitwise OR
this and ss2 must be >= 0 return values:
Definition at line 1053 of file ttmathbig.h.
References ttmath::Int< value_size >::Abs(), ttmath::UInt< value_size >::BitOr(), ttmath::Big< exp, man >::CheckCarry(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::UInt< value_size >::Rcr(), ttmath::Big< exp, man >::SetNan(), ttmath::Big< exp, man >::SmallerWithoutSignThan(), ttmath::Big< exp, man >::Standardizing(), ttmath::Int< value_size >::Sub(), ttmath::Big< exp, man >::Swap(), ttmath::Int< value_size >::ToInt(), and TTMATH_BITS_PER_UINT.
Referenced by ttmath::Big< exp, man >::operator &().
uint ttmath::Big< exp, man >::BitXor | ( | Big< exp, man > | ss2 | ) |
bitwise XOR
this and ss2 must be >= 0 return values:
Definition at line 1109 of file ttmathbig.h.
References ttmath::Int< value_size >::Abs(), ttmath::UInt< value_size >::BitXor(), ttmath::Big< exp, man >::CheckCarry(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::UInt< value_size >::Rcr(), ttmath::Big< exp, man >::SetNan(), ttmath::Big< exp, man >::SmallerWithoutSignThan(), ttmath::Big< exp, man >::Standardizing(), ttmath::Int< value_size >::Sub(), ttmath::Big< exp, man >::Swap(), ttmath::Int< value_size >::ToInt(), and TTMATH_BITS_PER_UINT.
Referenced by ttmath::Big< exp, man >::operator &().
void ttmath::Big< exp, man >::ChangeSign | ( | ) |
this method changes the sign when there is a value of zero then the sign is not changed
samples
Definition at line 740 of file ttmathbig.h.
References ttmath::Int< value_size >::AddOne(), ttmath::UInt< value_size >::AddOne(), ttmath::Big< exp, man >::ClearInfoBit(), ttmath::Big< exp, man >::IsSign(), ttmath::UInt< value_size >::IsTheLowestBitSet(), ttmath::Big< exp, man >::IsZero(), ttmath::UInt< value_size >::Rcr(), ttmath::Big< exp, man >::SetInfoBit(), ttmath::UInt< value_size >::SubOne(), and TTMATH_BIG_SIGN.
Referenced by ttmath::Big< exp, man >::Add(), ttmath::Big< exp, man >::FromString(), and ttmath::Big< exp, man >::operator-().
uint ttmath::Big< exp, man >::CheckCarry | ( | uint | c | ) |
this method sets NaN if there was a carry (and returns 1 in such a case)
c can be 0, 1 or other value different from zero
Definition at line 121 of file ttmathbig.h.
References ttmath::Big< exp, man >::SetNan().
Referenced by ttmath::Big< exp, man >::Add(), ttmath::Big< exp, man >::BitAnd(), ttmath::Big< exp, man >::BitOr(), ttmath::Big< exp, man >::BitXor(), ttmath::Big< exp, man >::Div(), ttmath::Big< exp, man >::Exp(), ttmath::Big< exp, man >::FromBig(), ttmath::Big< exp, man >::FromString(), ttmath::Big< exp, man >::Ln(), ttmath::Big< exp, man >::Log(), ttmath::Big< exp, man >::Mul(), ttmath::Big< exp, man >::MulUInt(), ttmath::Big< exp, man >::Pow(), ttmath::Big< exp, man >::PowFrac(), ttmath::Big< exp, man >::PowInt(), ttmath::Big< exp, man >::PowUInt(), ttmath::Big< exp, man >::Round(), and ttmath::Big< exp, man >::Sqrt().
void ttmath::Big< exp, man >::ClearInfoBit | ( | unsigned char | bit | ) |
this method clears a specific bit in the 'info' variable
bit is one of: TTMATH_BIG_SIGN, TTMATH_BIG_NAN etc.
Definition at line 224 of file ttmathbig.h.
Referenced by ttmath::Big< exp, man >::Abs(), ttmath::Big< exp, man >::ChangeSign(), and ttmath::Big< exp, man >::Standardizing().
uint ttmath::Big< exp, man >::Div | ( | const Big< exp, man > & | ss2, |
bool | round = true |
||
) |
division this = this / ss2
return value:
Definition at line 1452 of file ttmathbig.h.
References ttmath::Big< exp, man >::CheckCarry(), ttmath::Big< exp, man >::Div(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsZero(), ttmath::Big< exp, man >::Mul(), ttmath::Big< exp, man >::SetNan(), ttmath::Big< exp, man >::SkipFraction(), ttmath::Big< exp, man >::SmallerWithoutSignThan(), ttmath::Big< exp, man >::Sub(), and TTMATH_REFERENCE_ASSERT.
Referenced by ttmath::Big< exp, man >::Div(), ttmath::Big< exp, man >::Exp(), ttmath::Big< exp, man >::FromString(), ttmath::Big< exp, man >::Log(), ttmath::Big< exp, man >::operator-(), ttmath::Big< exp, man >::Pow(), ttmath::Big< exp, man >::PowInt(), and ttmath::Big< exp, man >::Sqrt().
bool ttmath::Big< exp, man >::EqualWithoutSign | ( | const Big< exp, man > & | ss2 | ) | const |
this method performs the formula 'abs(this) == abs(ss2)' and returns the result
(in other words it treats 'this' and 'ss2' as values without a sign) we don't check the NaN flag
Definition at line 5473 of file ttmathbig.h.
References ttmath::Big< exp, man >::GreaterWithoutSignThan(), ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), and ttmath::Big< exp, man >::SmallerWithoutSignThan().
uint ttmath::Big< exp, man >::Exp | ( | const Big< exp, man > & | x | ) |
Exponent this = exp(x) = e^x
we're using the fact that our value is stored in form of:
x = mantissa * 2^exponent
then
e^x = e^(mantissa* 2^exponent) or e^x = (e^mantissa)^(2^exponent)
'Exp' returns a carry if we can't count the result ('x' is too big)
Definition at line 1948 of file ttmathbig.h.
References ttmath::Big< exp, man >::Abs(), ttmath::Int< value_size >::Add(), ttmath::Big< exp, man >::Add(), ttmath::Int< value_size >::AddOne(), ttmath::Big< exp, man >::CheckCarry(), ttmath::Big< exp, man >::Div(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsZero(), ttmath::Big< exp, man >::Mul(), ttmath::Big< exp, man >::PowUInt(), ttmath::Big< exp, man >::SetOne(), ttmath::UInt< value_size >::SetZero(), ttmath::Big< exp, man >::SetZero(), ttmath::Big< exp, man >::Sub(), ttmath::UInt< value_size >::table, TTMATH_ARITHMETIC_MAX_LOOP, TTMATH_BITS_PER_UINT, and TTMATH_UINT_HIGHEST_BIT.
Referenced by ttmath::Big< exp, man >::PowFrac(), and ttmath::Big< exp, man >::Sqrt().
uint ttmath::Big< exp, man >::FromBig | ( | const Big< another_exp, another_man > & | another | ) |
converting methods
converting from another type of a Big object
Definition at line 2222 of file ttmathbig.h.
References ttmath::Int< value_size >::AddInt(), ttmath::Big< exp, man >::CheckCarry(), ttmath::Int< value_size >::FromInt(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsZero(), ttmath::Big< exp, man >::SetNan(), ttmath::Int< value_size >::SubInt(), ttmath::UInt< value_size >::table, ttmath::Int< value_size >::ToInt(), and TTMATH_BITS_PER_UINT.
Referenced by ttmath::Big< exp, man >::Big(), and ttmath::Big< exp, man >::operator=().
uint ttmath::Big< exp, man >::FromDouble | ( | double | value | ) |
this method converts from standard double into this class
standard double means IEEE-754 floating point value with 64 bits it is as follows (from http://www.psc.edu/general/software/packages/ieee/ieee.html):
The IEEE double precision floating point standard representation requires a 64 bit word, which may be represented as numbered from 0 to 63, left to right. The first bit is the sign bit, S, the next eleven bits are the exponent bits, 'E', and the final 52 bits are the fraction 'F':
S EEEEEEEEEEE FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 0 1 11 12 63
The value V represented by the word may be determined as follows:
Definition at line 2718 of file ttmathbig.h.
References ttmath::Big< exp, man >::SetNan(), ttmath::Big< exp, man >::SetZero(), ttmath::Big< exp, man >::Standardizing(), ttmath::UInt< value_size >::table, and TTMATH_BITS_PER_UINT.
Referenced by ttmath::Big< exp, man >::Big(), ttmath::Big< exp, man >::FromFloat(), ttmath::Big< exp, man >::FromInt(), and ttmath::Big< exp, man >::operator=().
uint ttmath::Big< exp, man >::FromFloat | ( | float | value | ) |
this method converts from float to this class
Definition at line 2815 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromDouble().
Referenced by ttmath::Big< exp, man >::Big(), and ttmath::Big< exp, man >::operator=().
uint ttmath::Big< exp, man >::FromInt | ( | uint | value | ) |
a method for converting 'uint' to this class
Definition at line 2546 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromUInt().
Referenced by ttmath::Big< exp, man >::Big(), ttmath::Big< exp, man >::Ln(), ttmath::Big< exp, man >::operator=(), and ttmath::Big< exp, man >::ToInt().
uint ttmath::Big< exp, man >::FromInt | ( | sint | value | ) |
a method for converting 'sint' to this class
Definition at line 2555 of file ttmathbig.h.
References ttmath::UInt< value_size >::CompensationToLeft(), ttmath::Big< exp, man >::FromDouble(), ttmath::Big< exp, man >::FromUInt(), ttmath::Big< exp, man >::SetNan(), ttmath::Big< exp, man >::SetSign(), ttmath::Big< exp, man >::SetZero(), ttmath::UInt< value_size >::table, and TTMATH_BITS_PER_UINT.
uint ttmath::Big< exp, man >::FromInt | ( | const UInt< int_size > & | value | ) |
a method for converting from 'UInt<int_size>' to this class
Definition at line 3533 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromUInt().
uint ttmath::Big< exp, man >::FromInt | ( | Int< int_size > | value | ) |
a method for converting from 'Int<int_size>' to this class
Definition at line 3543 of file ttmathbig.h.
References ttmath::Int< value_size >::ChangeSign(), ttmath::UInt< value_size >::CompensationToLeft(), ttmath::Int< value_size >::IsSign(), and ttmath::Big< exp, man >::SetSign().
uint ttmath::Big< exp, man >::FromString | ( | const char * | source, |
uint | base = 10 , |
||
const char ** | after_source = 0 , |
||
bool * | value_read = 0 |
||
) |
a method for converting a string into its value
it returns 1 if the value is too big – we cannot pass it into the range of our class Big<exp,man> (or if the base is incorrect)
that means only digits before the comma operator can make this value too big, all digits after the comma we can ignore
'source' - pointer to the string for parsing
if 'after_source' is set that when this method finishes it sets the pointer to the new first character after parsed value
'value_read' - if the pointer is provided that means the value_read will be true only when a value has been actually read, there can be situation where only such a string '-' or '+' will be parsed – 'after_source' will be different from 'source' but no value has been read (there are no digits) on other words if 'value_read' is true – there is at least one digit in the string
Definition at line 4931 of file ttmathbig.h.
References ttmath::Conv::base.
Referenced by ttmath::Big< exp, man >::Big(), ttmath::Big< exp, man >::FromString(), and ttmath::Big< exp, man >::operator=().
uint ttmath::Big< exp, man >::FromString | ( | const char * | source, |
const Conv & | conv, | ||
const char ** | after_source = 0 , |
||
bool * | value_read = 0 |
||
) |
a method for converting a string into its value
Definition at line 4943 of file ttmathbig.h.
uint ttmath::Big< exp, man >::FromString | ( | const std::string & | string, |
uint | base = 10 , |
||
const char ** | after_source = 0 , |
||
bool * | value_read = 0 |
||
) |
a method for converting a string into its value
Definition at line 4952 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromString().
uint ttmath::Big< exp, man >::FromString | ( | const std::string & | string, |
const Conv & | conv, | ||
const char ** | after_source = 0 , |
||
bool * | value_read = 0 |
||
) |
a method for converting a string into its value
Definition at line 4961 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromString().
uint ttmath::Big< exp, man >::FromString | ( | const wchar_t * | source, |
uint | base = 10 , |
||
const wchar_t ** | after_source = 0 , |
||
bool * | value_read = 0 |
||
) |
a method for converting a string into its value
Definition at line 4972 of file ttmathbig.h.
References ttmath::Conv::base.
uint ttmath::Big< exp, man >::FromString | ( | const wchar_t * | source, |
const Conv & | conv, | ||
const wchar_t ** | after_source = 0 , |
||
bool * | value_read = 0 |
||
) |
a method for converting a string into its value
Definition at line 4984 of file ttmathbig.h.
uint ttmath::Big< exp, man >::FromString | ( | const std::wstring & | string, |
uint | base = 10 , |
||
const wchar_t ** | after_source = 0 , |
||
bool * | value_read = 0 |
||
) |
a method for converting a string into its value
Definition at line 4993 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromString().
uint ttmath::Big< exp, man >::FromString | ( | const std::wstring & | string, |
const Conv & | conv, | ||
const wchar_t ** | after_source = 0 , |
||
bool * | value_read = 0 |
||
) |
a method for converting a string into its value
Definition at line 5002 of file ttmathbig.h.
References ttmath::Big< exp, man >::Add(), ttmath::Conv::base, ttmath::Big< exp, man >::ChangeSign(), ttmath::Misc::CharToDigit(), ttmath::Big< exp, man >::CheckCarry(), ttmath::Conv::comma, ttmath::Conv::comma2, ttmath::Big< exp, man >::Div(), ttmath::Big< exp, man >::FromString(), ttmath::Conv::group, ttmath::Int< value_size >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::UInt< value_size >::IsZero(), ttmath::Big< exp, man >::Mul(), ttmath::Big< exp, man >::Pow(), ttmath::Big< exp, man >::SetNan(), and ttmath::Big< exp, man >::SetZero().
uint ttmath::Big< exp, man >::FromUInt | ( | uint | value | ) |
a method for converting 'uint' to this class
Definition at line 2520 of file ttmathbig.h.
References ttmath::Big< exp, man >::SetZero(), ttmath::Big< exp, man >::Standardizing(), ttmath::UInt< value_size >::table, and TTMATH_BITS_PER_UINT.
Referenced by ttmath::Big< exp, man >::Big(), ttmath::Big< exp, man >::FromInt(), ttmath::Big< exp, man >::operator=(), and ttmath::Big< exp, man >::ToInt().
uint ttmath::Big< exp, man >::FromUInt | ( | UInt< int_size > | value | ) |
a method for converting from 'UInt<int_size>' to this class
Definition at line 3520 of file ttmathbig.h.
References ttmath::UInt< value_size >::CompensationToLeft().
bool ttmath::Big< exp, man >::GreaterWithoutSignThan | ( | const Big< exp, man > & | ss2 | ) | const |
this method performs the formula 'abs(this) > abs(ss2)' and returns the result
(in other words it treats 'this' and 'ss2' as values without a sign) we don't check the NaN flag
Definition at line 5435 of file ttmathbig.h.
References ttmath::Big< exp, man >::IsZero().
Referenced by ttmath::Big< exp, man >::EqualWithoutSign().
bool ttmath::Big< exp, man >::IsInfoBit | ( | unsigned char | bit | ) | const |
this method returns true if a specific bit in the 'info' variable is set
bit is one of: TTMATH_BIG_SIGN, TTMATH_BIG_NAN etc.
Definition at line 247 of file ttmathbig.h.
Referenced by ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsSign(), and ttmath::Big< exp, man >::IsZero().
bool ttmath::Big< exp, man >::IsInteger | ( | ) | const |
this method returns true if the value is integer (there is no a fraction)
(we don't check NaN)
Definition at line 5865 of file ttmathbig.h.
References ttmath::Int< value_size >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::UInt< value_size >::table, ttmath::Int< value_size >::ToInt(), TTMATH_BITS_PER_UINT, and TTMATH_UINT_MAX_VALUE.
Referenced by ttmath::Big< exp, man >::Pow(), and ttmath::Big< exp, man >::Sqrt().
bool ttmath::Big< exp, man >::IsNan | ( | ) | const |
this method returns true when there is not a valid number
Definition at line 667 of file ttmathbig.h.
References ttmath::Big< exp, man >::IsInfoBit(), and TTMATH_BIG_NAN.
Referenced by ttmath::Big< exp, man >::Add(), ttmath::Big< exp, man >::BitAnd(), ttmath::Big< exp, man >::BitOr(), ttmath::Big< exp, man >::BitXor(), ttmath::Big< exp, man >::Div(), ttmath::Big< exp, man >::Exp(), ttmath::Big< exp, man >::FromBig(), ttmath::Big< exp, man >::Ln(), ttmath::Big< exp, man >::Log(), ttmath::Big< exp, man >::Mul(), ttmath::Big< exp, man >::MulInt(), ttmath::Big< exp, man >::MulUInt(), ttmath::Big< exp, man >::Pow(), ttmath::Big< exp, man >::PowFrac(), ttmath::Big< exp, man >::PowInt(), ttmath::Big< exp, man >::PowUInt(), ttmath::Big< exp, man >::RemainFraction(), ttmath::Big< exp, man >::Round(), ttmath::Big< exp, man >::Sgn(), ttmath::Big< exp, man >::SkipFraction(), ttmath::Big< exp, man >::Sqrt(), ttmath::Big< exp, man >::ToDouble(), and ttmath::Big< exp, man >::ToWString().
bool ttmath::Big< exp, man >::IsSign | ( | ) | const |
this method returns true when there's the sign set also we don't check the NaN flag
Definition at line 658 of file ttmathbig.h.
References ttmath::Big< exp, man >::IsInfoBit(), and TTMATH_BIG_SIGN.
Referenced by ttmath::Big< exp, man >::Add(), ttmath::Big< exp, man >::BitAnd(), ttmath::Big< exp, man >::BitOr(), ttmath::Big< exp, man >::BitXor(), ttmath::Big< exp, man >::ChangeSign(), ttmath::Big< exp, man >::EqualWithoutSign(), ttmath::Big< exp, man >::Ln(), ttmath::Big< exp, man >::Log(), ttmath::Big< exp, man >::Mul(), ttmath::Big< exp, man >::MulInt(), ttmath::Big< exp, man >::Pow(), ttmath::Big< exp, man >::PowInt(), ttmath::Big< exp, man >::PowUInt(), ttmath::Big< exp, man >::Round(), ttmath::Big< exp, man >::Sgn(), ttmath::Big< exp, man >::Sqrt(), ttmath::Big< exp, man >::ToDouble(), ttmath::Big< exp, man >::ToInt(), ttmath::Big< exp, man >::ToUInt(), and ttmath::Big< exp, man >::ToWString().
bool ttmath::Big< exp, man >::IsZero | ( | ) | const |
testing whether there is a value zero or not
Definition at line 648 of file ttmathbig.h.
References ttmath::Big< exp, man >::IsInfoBit(), and TTMATH_BIG_ZERO.
Referenced by ttmath::Big< exp, man >::Add(), ttmath::Big< exp, man >::BitAnd(), ttmath::Big< exp, man >::BitOr(), ttmath::Big< exp, man >::BitXor(), ttmath::Big< exp, man >::ChangeSign(), ttmath::Big< exp, man >::Div(), ttmath::Big< exp, man >::EqualWithoutSign(), ttmath::Big< exp, man >::Exp(), ttmath::Big< exp, man >::FromBig(), ttmath::Big< exp, man >::FromString(), ttmath::Big< exp, man >::GreaterWithoutSignThan(), ttmath::Big< exp, man >::IsInteger(), ttmath::Big< exp, man >::Ln(), ttmath::Big< exp, man >::Log(), ttmath::Big< exp, man >::Mul(), ttmath::Big< exp, man >::MulInt(), ttmath::Big< exp, man >::MulUInt(), ttmath::Big< exp, man >::Pow(), ttmath::Big< exp, man >::PowInt(), ttmath::Big< exp, man >::PowUInt(), ttmath::Big< exp, man >::RemainFraction(), ttmath::Big< exp, man >::Round(), ttmath::Big< exp, man >::Sgn(), ttmath::Big< exp, man >::SkipFraction(), ttmath::Big< exp, man >::SmallerWithoutSignThan(), ttmath::Big< exp, man >::Sqrt(), ttmath::Big< exp, man >::ToDouble(), ttmath::Big< exp, man >::ToInt(), and ttmath::Big< exp, man >::ToWString().
|
static |
returning the currect type of the library
Definition at line 154 of file ttmathbig.h.
References ttmath::UInt< value_size >::LibType().
|
static |
returning the string represents the currect type of the library we have following types:
Definition at line 145 of file ttmathbig.h.
References ttmath::UInt< value_size >::LibTypeStr().
uint ttmath::Big< exp, man >::Ln | ( | const Big< exp, man > & | x | ) |
Natural logarithm this = ln(x) (a logarithm with the base equal 'e')
we're using the fact that our value is stored in form of:
x = mantissa * 2^exponent
then
ln(x) = ln (mantissa * 2^exponent) = ln (mantissa) + (exponent * ln (2))
the mantissa we'll show as a value from range <1,2) because the logarithm is decreasing too fast when 'x' is going to 0
return values:
Definition at line 2126 of file ttmathbig.h.
References ttmath::Big< exp, man >::Add(), ttmath::Big< exp, man >::CheckCarry(), ttmath::Big< exp, man >::FromInt(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::Big< exp, man >::Mul(), ttmath::Big< exp, man >::SetLn2(), ttmath::Big< exp, man >::SetNan(), and TTMATH_BITS_PER_UINT.
Referenced by ttmath::Big< exp, man >::Log(), ttmath::Big< exp, man >::PowFrac(), and ttmath::Big< exp, man >::Sqrt().
uint ttmath::Big< exp, man >::Log | ( | const Big< exp, man > & | x, |
const Big< exp, man > & | base | ||
) |
Logarithm from 'x' with a 'base'
we're using the formula:
Log(x) with 'base' = ln(x) / ln(base)
return values:
Definition at line 2171 of file ttmathbig.h.
References ttmath::Big< exp, man >::CheckCarry(), ttmath::Big< exp, man >::Div(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::Big< exp, man >::Ln(), ttmath::Big< exp, man >::SetNan(), ttmath::Big< exp, man >::SetOne(), and ttmath::Big< exp, man >::SetZero().
uint ttmath::Big< exp, man >::Mod | ( | const Big< exp, man > & | ss2 | ) |
caltulate the remainder from a division
samples
in other words: this(old) = ss2 * q + this(new)
return value:
Definition at line 1521 of file ttmathbig.h.
uint ttmath::Big< exp, man >::Mod2 | ( | ) | const |
this method returns: 'this' mod 2 (either zero or one)
this method is much faster than using Mod( object_with_value_two )
Definition at line 1541 of file ttmathbig.h.
References ttmath::UInt< value_size >::GetBit(), ttmath::Int< value_size >::ToInt(), and TTMATH_BITS_PER_UINT.
Referenced by ttmath::Big< exp, man >::PowUInt().
uint ttmath::Big< exp, man >::Mul | ( | const Big< exp, man > & | ss2, |
bool | round = true |
||
) |
multiplication this = this * ss2 this method returns a carry
Definition at line 1355 of file ttmathbig.h.
References ttmath::Big< exp, man >::Abs(), ttmath::Big< exp, man >::CheckCarry(), ttmath::UInt< value_size >::CompensationToLeft(), ttmath::UInt< value_size >::Div(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::Big< exp, man >::SetNan(), ttmath::Big< exp, man >::SetSign(), ttmath::Big< exp, man >::Standardizing(), ttmath::Int< value_size >::Sub(), ttmath::UInt< value_size >::table, TTMATH_REFERENCE_ASSERT, and TTMATH_UINT_HIGHEST_BIT.
Referenced by ttmath::Big< exp, man >::Div(), ttmath::Big< exp, man >::Exp(), ttmath::Big< exp, man >::FromString(), ttmath::Big< exp, man >::Ln(), ttmath::Big< exp, man >::operator-(), ttmath::Big< exp, man >::Pow(), ttmath::Big< exp, man >::PowFrac(), ttmath::Big< exp, man >::PowUInt(), and ttmath::Big< exp, man >::Sqrt().
uint ttmath::Big< exp, man >::MulInt | ( | sint | ss2 | ) |
Multiplication this = this * ss2 (ss2 is sint)
ss2 with a sign
Definition at line 1215 of file ttmathbig.h.
References ttmath::Big< exp, man >::Abs(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::Big< exp, man >::MulUInt(), ttmath::Big< exp, man >::SetSign(), and ttmath::Big< exp, man >::SetZero().
uint ttmath::Big< exp, man >::MulUInt | ( | uint | ss2 | ) |
Multiplication this = this * ss2 (ss2 is uint)
ss2 without a sign
Definition at line 1161 of file ttmathbig.h.
References ttmath::Int< value_size >::Add(), ttmath::Big< exp, man >::CheckCarry(), ttmath::UInt< value_size >::CompensationToLeft(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsZero(), ttmath::UInt< value_size >::MulInt(), ttmath::UInt< value_size >::Rcr(), ttmath::Big< exp, man >::SetZero(), ttmath::Big< exp, man >::Standardizing(), ttmath::UInt< value_size >::table, and TTMATH_BITS_PER_UINT.
Referenced by ttmath::Big< exp, man >::MulInt().
Big<exp,man> ttmath::Big< exp, man >::operator& | ( | const Big< exp, man > & | p2 | ) | const |
bitwise operators (we do not define bitwise not)
Definition at line 5721 of file ttmathbig.h.
References ttmath::Big< exp, man >::BitAnd(), ttmath::Big< exp, man >::BitOr(), and ttmath::Big< exp, man >::BitXor().
Big<exp,man>& ttmath::Big< exp, man >::operator++ | ( | ) |
Prefix operator e.g ++variable
Definition at line 5674 of file ttmathbig.h.
Big<exp,man> ttmath::Big< exp, man >::operator++ | ( | int | ) |
Postfix operator e.g variable++
Definition at line 5685 of file ttmathbig.h.
Big<exp,man> ttmath::Big< exp, man >::operator- | ( | ) | const |
standard mathematical operators
an operator for changing the sign
this method is not changing 'this' but the changed value is returned
Definition at line 5590 of file ttmathbig.h.
References ttmath::Big< exp, man >::Add(), ttmath::Big< exp, man >::ChangeSign(), ttmath::Big< exp, man >::Div(), ttmath::Big< exp, man >::Mul(), and ttmath::Big< exp, man >::Sub().
Big<exp, man>& ttmath::Big< exp, man >::operator= | ( | sint | value | ) |
an operator= for converting 'sint' to this class
Definition at line 3101 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromInt().
Referenced by ttmath::Big< exp, man >::Big().
Big<exp, man>& ttmath::Big< exp, man >::operator= | ( | uint | value | ) |
an operator= for converting 'uint' to this class
Definition at line 3112 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromUInt().
Big<exp, man>& ttmath::Big< exp, man >::operator= | ( | float | value | ) |
an operator= for converting 'float' to this class
Definition at line 3123 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromFloat().
Big<exp, man>& ttmath::Big< exp, man >::operator= | ( | double | value | ) |
an operator= for converting 'double' to this class
Definition at line 3134 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromDouble().
Big<exp, man>& ttmath::Big< exp, man >::operator= | ( | unsigned int | value | ) |
an operator= for converting 32 bit unsigned int to this class this operator is created only on a 64bit platform***
Definition at line 3440 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromUInt().
Big<exp, man>& ttmath::Big< exp, man >::operator= | ( | signed int | value | ) |
an operator for converting 32 bit signed int to this class this operator is created only on a 64bit platform***
Definition at line 3462 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromInt().
Big<exp,man>& ttmath::Big< exp, man >::operator= | ( | const Int< int_size > & | value | ) |
an operator= for converting from 'Int<int_size>' to this class
Definition at line 3568 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromInt().
Big<exp,man>& ttmath::Big< exp, man >::operator= | ( | const UInt< int_size > & | value | ) |
an operator= for converting from 'UInt<int_size>' to this class
Definition at line 3590 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromUInt().
Big<exp,man>& ttmath::Big< exp, man >::operator= | ( | const Big< another_exp, another_man > & | value | ) |
an operator= for converting from 'Big<another_exp, another_man>' to this class
Definition at line 3612 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromBig().
Big<exp,man>& ttmath::Big< exp, man >::operator= | ( | const Big< exp, man > & | value | ) |
the default assignment operator
Definition at line 3667 of file ttmathbig.h.
Big<exp, man>& ttmath::Big< exp, man >::operator= | ( | const char * | string | ) |
an operator= for converting a string into its value
Definition at line 5321 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromString().
Big<exp, man>& ttmath::Big< exp, man >::operator= | ( | const std::string & | string | ) |
an operator= for converting a string into its value
Definition at line 5332 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromString().
Big<exp, man>& ttmath::Big< exp, man >::operator= | ( | const wchar_t * | string | ) |
an operator= for converting a string into its value
Definition at line 5364 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromString().
Big<exp, man>& ttmath::Big< exp, man >::operator= | ( | const std::wstring & | string | ) |
an operator= for converting a string into its value
Definition at line 5375 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromString().
uint ttmath::Big< exp, man >::Pow | ( | UInt< pow_size > | pow | ) |
power this = this ^ pow (pow without a sign)
binary algorithm (r-to-l)
return values:
Definition at line 1566 of file ttmathbig.h.
References ttmath::Big< exp, man >::CheckCarry(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsZero(), ttmath::UInt< value_size >::IsZero(), ttmath::Big< exp, man >::Mul(), ttmath::UInt< value_size >::Rcr(), ttmath::Big< exp, man >::SetNan(), ttmath::Big< exp, man >::SetOne(), and ttmath::UInt< value_size >::table.
Referenced by ttmath::Big< exp, man >::FromString(), and ttmath::Big< exp, man >::Pow().
uint ttmath::Big< exp, man >::Pow | ( | Int< pow_size > | pow | ) |
power this = this ^ pow p can be negative
return values:
Definition at line 1618 of file ttmathbig.h.
References ttmath::Int< value_size >::ChangeSign(), ttmath::Big< exp, man >::CheckCarry(), ttmath::Big< exp, man >::Div(), ttmath::Big< exp, man >::IsNan(), ttmath::Int< value_size >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::Big< exp, man >::Pow(), ttmath::Big< exp, man >::SetNan(), and ttmath::Big< exp, man >::SetOne().
uint ttmath::Big< exp, man >::Pow | ( | const Big< exp, man > & | pow | ) |
power this = this ^ pow pow can be negative and with fraction
return values:
Definition at line 1779 of file ttmathbig.h.
References ttmath::Big< exp, man >::CheckCarry(), ttmath::Big< exp, man >::IsInteger(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::Big< exp, man >::PowFrac(), ttmath::Big< exp, man >::PowInt(), ttmath::Big< exp, man >::SetNan(), ttmath::Big< exp, man >::SetZero(), and TTMATH_BITS_PER_UINT.
uint ttmath::Big< exp, man >::PowFrac | ( | const Big< exp, man > & | pow | ) |
power this = this ^ pow this must be greater than zero (this > 0) pow can be negative and with fraction
return values:
Definition at line 1749 of file ttmathbig.h.
References ttmath::Big< exp, man >::CheckCarry(), ttmath::Big< exp, man >::Exp(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::Ln(), ttmath::Big< exp, man >::Mul(), and ttmath::Big< exp, man >::SetNan().
Referenced by ttmath::Big< exp, man >::Pow().
uint ttmath::Big< exp, man >::PowInt | ( | const Big< exp, man > & | pow | ) |
power this = this ^ [pow] pow is treated as a value without a fraction pow can be negative
return values:
Definition at line 1713 of file ttmathbig.h.
References ttmath::Big< exp, man >::CheckCarry(), ttmath::Big< exp, man >::Div(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::Big< exp, man >::PowUInt(), ttmath::Big< exp, man >::SetNan(), and ttmath::Big< exp, man >::SetOne().
Referenced by ttmath::Big< exp, man >::Pow().
uint ttmath::Big< exp, man >::PowUInt | ( | Big< exp, man > | pow | ) |
power this = this ^ abs([pow]) pow is treated as a value without a sign and without a fraction if pow has a sign then the method pow.Abs() is used if pow has a fraction the fraction is skipped (not used in calculation)
return values:
Definition at line 1657 of file ttmathbig.h.
References ttmath::Big< exp, man >::Abs(), ttmath::Big< exp, man >::CheckCarry(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::Big< exp, man >::Mod2(), ttmath::Big< exp, man >::Mul(), ttmath::Big< exp, man >::SetNan(), ttmath::Big< exp, man >::SetOne(), and ttmath::Int< value_size >::SubOne().
Referenced by ttmath::Big< exp, man >::Exp(), and ttmath::Big< exp, man >::PowInt().
void ttmath::Big< exp, man >::RemainFraction | ( | ) |
this method remains only a fraction from the value
samples:
Definition at line 5824 of file ttmathbig.h.
References ttmath::Big< exp, man >::IsNan(), ttmath::Int< value_size >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::UInt< value_size >::Rcl(), ttmath::Big< exp, man >::SetZero(), ttmath::Big< exp, man >::Standardizing(), ttmath::Int< value_size >::Sub(), and ttmath::Int< value_size >::ToInt().
uint ttmath::Big< exp, man >::Round | ( | ) |
this method rounds to the nearest integer value (it returns a carry if it was)
samples:
Definition at line 5911 of file ttmathbig.h.
References ttmath::Big< exp, man >::Add(), ttmath::Big< exp, man >::CheckCarry(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::Big< exp, man >::Set05(), ttmath::Big< exp, man >::SkipFraction(), ttmath::Big< exp, man >::Sub(), and ttmath::Big< exp, man >::ToString().
Referenced by ttmath::Big< exp, man >::Sqrt().
void ttmath::Big< exp, man >::Set05 | ( | ) |
this method sets value 0.5
Definition at line 285 of file ttmathbig.h.
References ttmath::Big< exp, man >::SetOne(), and ttmath::Int< value_size >::SubOne().
Referenced by ttmath::Big< exp, man >::Round().
void ttmath::Big< exp, man >::Set05Pi | ( | ) |
this method sets the value of 0.5 * pi
Definition at line 406 of file ttmathbig.h.
References TTMATH_BITS_PER_UINT.
void ttmath::Big< exp, man >::Set2Pi | ( | ) |
this method sets the value of 2 * pi
Definition at line 419 of file ttmathbig.h.
References TTMATH_BITS_PER_UINT.
void ttmath::Big< exp, man >::SetE | ( | ) |
this method sets the value of e (the base of the natural logarithm)
Definition at line 433 of file ttmathbig.h.
References ttmath::UInt< value_size >::SetFromTable(), and TTMATH_BITS_PER_UINT.
void ttmath::Big< exp, man >::SetInfoBit | ( | unsigned char | bit | ) |
this method sets a specific bit in the 'info' variable
bit is one of: TTMATH_BIG_SIGN, TTMATH_BIG_NAN etc.
Definition at line 236 of file ttmathbig.h.
Referenced by ttmath::Big< exp, man >::ChangeSign(), ttmath::Big< exp, man >::SetNan(), ttmath::Big< exp, man >::SetSign(), and ttmath::Big< exp, man >::Standardizing().
void ttmath::Big< exp, man >::SetLn10 | ( | ) |
this method sets the value of ln(10) the natural logarithm from 10
I introduced this constant especially to make the conversion ToString() being faster. In fact the method ToString() is keeping values of logarithms it has calculated but it must calculate the logarithm at least once. If a program, which uses this library, is running for a long time this would be ok, but for programs which are running shorter, for example for CGI applications which only once are printing values, this would be much inconvenience. Then if we're printing with base (radix) 10 and the mantissa of our value is smaller than or equal to TTMATH_BUILTIN_VARIABLES_SIZE we don't calculate the logarithm but take it from this constant.
Definition at line 558 of file ttmathbig.h.
References ttmath::UInt< value_size >::SetFromTable(), and TTMATH_BITS_PER_UINT.
void ttmath::Big< exp, man >::SetLn2 | ( | ) |
this method sets the value of ln(2) the natural logarithm from 2
Definition at line 490 of file ttmathbig.h.
References ttmath::UInt< value_size >::SetFromTable(), and TTMATH_BITS_PER_UINT.
Referenced by ttmath::Big< exp, man >::Ln().
void ttmath::Big< exp, man >::SetMax | ( | ) |
this method sets the maximum value which can be held in this type
Definition at line 618 of file ttmathbig.h.
References ttmath::Int< value_size >::SetMax(), and ttmath::UInt< value_size >::SetMax().
void ttmath::Big< exp, man >::SetMin | ( | ) |
this method sets the minimum value which can be held in this type
Definition at line 632 of file ttmathbig.h.
References ttmath::Int< value_size >::SetMax(), ttmath::UInt< value_size >::SetMax(), and ttmath::Big< exp, man >::SetSign().
void ttmath::Big< exp, man >::SetNan | ( | ) |
this method sets NaN flag (Not a Number) when this flag is set that means there is no a valid number
Definition at line 296 of file ttmathbig.h.
References ttmath::Big< exp, man >::SetInfoBit(), and TTMATH_BIG_NAN.
Referenced by ttmath::Big< exp, man >::BitAnd(), ttmath::Big< exp, man >::BitOr(), ttmath::Big< exp, man >::BitXor(), ttmath::Big< exp, man >::CheckCarry(), ttmath::Big< exp, man >::Div(), ttmath::Big< exp, man >::FromBig(), ttmath::Big< exp, man >::FromDouble(), ttmath::Big< exp, man >::FromInt(), ttmath::Big< exp, man >::FromString(), ttmath::Big< exp, man >::Ln(), ttmath::Big< exp, man >::Log(), ttmath::Big< exp, man >::Mul(), ttmath::Big< exp, man >::Pow(), ttmath::Big< exp, man >::PowFrac(), ttmath::Big< exp, man >::PowInt(), ttmath::Big< exp, man >::PowUInt(), ttmath::Big< exp, man >::SetZeroNan(), and ttmath::Big< exp, man >::Sqrt().
void ttmath::Big< exp, man >::SetOne | ( | ) |
this method sets one
Definition at line 271 of file ttmathbig.h.
References ttmath::UInt< value_size >::SetZero(), ttmath::UInt< value_size >::table, TTMATH_BITS_PER_UINT, and TTMATH_UINT_HIGHEST_BIT.
Referenced by ttmath::Big< exp, man >::Exp(), ttmath::Big< exp, man >::Log(), ttmath::Big< exp, man >::Pow(), ttmath::Big< exp, man >::PowInt(), ttmath::Big< exp, man >::PowUInt(), ttmath::Big< exp, man >::Set05(), ttmath::Big< exp, man >::Sgn(), and ttmath::Big< exp, man >::Sqrt().
void ttmath::Big< exp, man >::SetPi | ( | ) |
this method sets the value of pi
Definition at line 393 of file ttmathbig.h.
References TTMATH_BITS_PER_UINT.
void ttmath::Big< exp, man >::SetSign | ( | ) |
this method sets the sign
samples
we do not check whether there is a zero or not, if you're using this method you must be sure that the value is (or will be afterwards) different from zero
Definition at line 726 of file ttmathbig.h.
References ttmath::Big< exp, man >::SetInfoBit(), and TTMATH_BIG_SIGN.
Referenced by ttmath::Big< exp, man >::Big(), ttmath::Big< exp, man >::FromInt(), ttmath::Big< exp, man >::Mul(), ttmath::Big< exp, man >::MulInt(), ttmath::Big< exp, man >::SetMin(), and ttmath::Big< exp, man >::Sgn().
void ttmath::Big< exp, man >::SetZero | ( | ) |
this method sets zero
Definition at line 256 of file ttmathbig.h.
References ttmath::UInt< value_size >::SetZero(), and TTMATH_BIG_ZERO.
Referenced by ttmath::Big< exp, man >::Big(), ttmath::Big< exp, man >::BitAnd(), ttmath::Big< exp, man >::Exp(), ttmath::Big< exp, man >::FromDouble(), ttmath::Big< exp, man >::FromInt(), ttmath::Big< exp, man >::FromString(), ttmath::Big< exp, man >::FromUInt(), ttmath::Big< exp, man >::Log(), ttmath::Big< exp, man >::MulInt(), ttmath::Big< exp, man >::MulUInt(), ttmath::Big< exp, man >::Pow(), ttmath::Big< exp, man >::RemainFraction(), ttmath::Big< exp, man >::SetZeroNan(), ttmath::Big< exp, man >::Sgn(), and ttmath::Big< exp, man >::SkipFraction().
void ttmath::Big< exp, man >::SetZeroNan | ( | ) |
this method sets NaN flag (Not a Number) also clears the mantissa and exponent (similarly as it would be a zero value)
Definition at line 306 of file ttmathbig.h.
References ttmath::Big< exp, man >::SetNan(), and ttmath::Big< exp, man >::SetZero().
Referenced by ttmath::Big< exp, man >::Big().
void ttmath::Big< exp, man >::Sgn | ( | ) |
this method remains the 'sign' of the value
samples
Definition at line 696 of file ttmathbig.h.
References ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::Big< exp, man >::SetOne(), ttmath::Big< exp, man >::SetSign(), and ttmath::Big< exp, man >::SetZero().
void ttmath::Big< exp, man >::SkipFraction | ( | ) |
this method makes an integer value by skipping any fractions
samples:
Definition at line 5790 of file ttmathbig.h.
References ttmath::UInt< value_size >::ClearFirstBits(), ttmath::Big< exp, man >::IsNan(), ttmath::Int< value_size >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::Big< exp, man >::SetZero(), and ttmath::Int< value_size >::ToInt().
Referenced by ttmath::Big< exp, man >::Div(), and ttmath::Big< exp, man >::Round().
bool ttmath::Big< exp, man >::SmallerWithoutSignThan | ( | const Big< exp, man > & | ss2 | ) | const |
methods for comparing
this method performs the formula 'abs(this) < abs(ss2)' and returns the result
(in other words it treats 'this' and 'ss2' as values without a sign) we don't check the NaN flag
Definition at line 5401 of file ttmathbig.h.
References ttmath::Big< exp, man >::IsZero().
Referenced by ttmath::Big< exp, man >::Add(), ttmath::Big< exp, man >::BitAnd(), ttmath::Big< exp, man >::BitOr(), ttmath::Big< exp, man >::BitXor(), ttmath::Big< exp, man >::Div(), and ttmath::Big< exp, man >::EqualWithoutSign().
uint ttmath::Big< exp, man >::Sqrt | ( | ) |
this function calculates the square root e.g. let this=9 then this.Sqrt() gives 3
return:
Definition at line 1817 of file ttmathbig.h.
References ttmath::Big< exp, man >::Add(), ttmath::Big< exp, man >::CheckCarry(), ttmath::Big< exp, man >::Div(), ttmath::Big< exp, man >::Exp(), ttmath::Big< exp, man >::IsInteger(), ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::Big< exp, man >::Ln(), ttmath::Big< exp, man >::Mul(), ttmath::Big< exp, man >::Round(), ttmath::Big< exp, man >::SetNan(), ttmath::Big< exp, man >::SetOne(), ttmath::Int< value_size >::SubOne(), TTMATH_ARITHMETIC_MAX_LOOP, and TTMATH_REFERENCE_ASSERT.
uint ttmath::Big< exp, man >::Standardizing | ( | ) |
this method moves all bits from mantissa into its left side (suitably changes the exponent) or if the mantissa is zero it sets the exponent to zero as well (and clears the sign bit and sets the zero bit)
it can return a carry the carry will be when we don't have enough space in the exponent
you don't have to use this method if you don't change the mantissa and exponent directly
Definition at line 173 of file ttmathbig.h.
References ttmath::Big< exp, man >::ClearInfoBit(), ttmath::UInt< value_size >::CompensationToLeft(), ttmath::UInt< value_size >::IsTheHighestBitSet(), ttmath::UInt< value_size >::IsZero(), ttmath::Big< exp, man >::SetInfoBit(), ttmath::UInt< value_size >::SetZero(), ttmath::Int< value_size >::Sub(), TTMATH_BIG_SIGN, and TTMATH_BIG_ZERO.
Referenced by ttmath::Big< exp, man >::Add(), ttmath::Big< exp, man >::Big(), ttmath::Big< exp, man >::BitAnd(), ttmath::Big< exp, man >::BitOr(), ttmath::Big< exp, man >::BitXor(), ttmath::Big< exp, man >::FromDouble(), ttmath::Big< exp, man >::FromUInt(), ttmath::Big< exp, man >::Mul(), ttmath::Big< exp, man >::MulUInt(), and ttmath::Big< exp, man >::RemainFraction().
uint ttmath::Big< exp, man >::Sub | ( | const Big< exp, man > & | ss2, |
bool | round = true |
||
) |
Subtraction this = this - ss2
it returns carry if the result is too big
Definition at line 978 of file ttmathbig.h.
References ttmath::Big< exp, man >::Add().
Referenced by ttmath::Big< exp, man >::Div(), ttmath::Big< exp, man >::Exp(), ttmath::Big< exp, man >::operator-(), and ttmath::Big< exp, man >::Round().
void ttmath::Big< exp, man >::Swap | ( | Big< exp, man > & | ss2 | ) |
this method swappes this for an argument
Definition at line 316 of file ttmathbig.h.
References ttmath::UInt< value_size >::SetFromTable(), and ttmath::UInt< value_size >::Swap().
Referenced by ttmath::Big< exp, man >::Add(), ttmath::Big< exp, man >::BitAnd(), ttmath::Big< exp, man >::BitOr(), and ttmath::Big< exp, man >::BitXor().
double ttmath::Big< exp, man >::ToDouble | ( | ) | const |
this method converts from this class into the 'double'
if the value is too big: 'result' will be +/-infinity (depending on the sign)
if the value is too small: 'result' will be 0
Definition at line 2830 of file ttmathbig.h.
Referenced by ttmath::Big< exp, man >::ToFloat().
uint ttmath::Big< exp, man >::ToDouble | ( | double & | result | ) | const |
this method converts from this class into the 'double'
if the value is too big:
if the value is too small:
Definition at line 2961 of file ttmathbig.h.
References ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::UInt< value_size >::Rcr(), ttmath::UInt< value_size >::table, ttmath::Int< value_size >::ToInt(), and TTMATH_BITS_PER_UINT.
float ttmath::Big< exp, man >::ToFloat | ( | ) | const |
this method converts from this class into the 'float'
if the value is too big: 'result' will be +/-infinity (depending on the sign)
if the value is too small: 'result' will be 0
Definition at line 2902 of file ttmathbig.h.
uint ttmath::Big< exp, man >::ToFloat | ( | float & | result | ) | const |
this method converts from this class into the 'float'
if the value is too big:
if the value is too small:
Definition at line 2923 of file ttmathbig.h.
References ttmath::Big< exp, man >::ToDouble().
sint ttmath::Big< exp, man >::ToInt | ( | ) | const |
this method converts 'this' into sint
Definition at line 2348 of file ttmathbig.h.
Referenced by ttmath::Big< exp, man >::Big(), and ttmath::Big< exp, man >::ToInt().
uint ttmath::Big< exp, man >::ToInt | ( | uint & | result | ) | const |
this method converts 'this' into 'result'
if the value is too big this method returns a carry (1)
Definition at line 2363 of file ttmathbig.h.
References ttmath::Big< exp, man >::ToUInt().
uint ttmath::Big< exp, man >::ToInt | ( | sint & | result | ) | const |
this method converts 'this' into 'result'
if the value is too big this method returns a carry (1)
Definition at line 2374 of file ttmathbig.h.
References ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), ttmath::UInt< value_size >::Rcl(), ttmath::UInt< value_size >::Rcr(), ttmath::UInt< value_size >::SetZero(), ttmath::UInt< value_size >::table, ttmath::Int< value_size >::ToInt(), TTMATH_BITS_PER_UINT, TTMATH_UINT_HIGHEST_BIT, and TTMATH_UINT_MAX_VALUE.
uint ttmath::Big< exp, man >::ToInt | ( | UInt< int_size > & | result | ) | const |
this method converts 'this' into 'result'
if the value is too big this method returns a carry (1)
Definition at line 2486 of file ttmathbig.h.
References ttmath::Big< exp, man >::ToUInt().
uint ttmath::Big< exp, man >::ToInt | ( | Int< int_size > & | result | ) | const |
this method converts 'this' into 'result'
if the value is too big this method returns a carry (1)
Definition at line 2498 of file ttmathbig.h.
References ttmath::Int< value_size >::ChangeSign(), ttmath::Big< exp, man >::IsSign(), ttmath::UInt< value_size >::table, TTMATH_UINT_HIGHEST_BIT, and TTMATH_UINT_MAX_VALUE.
uint ttmath::Big< exp, man >::ToInt | ( | unsigned int & | result | ) | const |
this method converts 'this' into 'result' (32 bit unsigned integer) this method is created only on a 64bit platform*** if the value is too big this method returns a carry (1)
Definition at line 3381 of file ttmathbig.h.
References ttmath::Big< exp, man >::ToUInt().
uint ttmath::Big< exp, man >::ToInt | ( | signed int & | result | ) | const |
this method converts 'this' into 'result' (32 bit signed integer) this method is created only on a 64bit platform*** if the value is too big this method returns a carry (1)
Definition at line 3392 of file ttmathbig.h.
References ttmath::Big< exp, man >::FromInt(), ttmath::Big< exp, man >::FromUInt(), and ttmath::Big< exp, man >::ToInt().
uint ttmath::Big< exp, man >::ToString | ( | std::string & | result, |
uint | base = 10 , |
||
bool | scient = false , |
||
sint | scient_from = 15 , |
||
sint | round = -1 , |
||
bool | trim_zeroes = true , |
||
char | comma = '.' |
||
) | const |
a method for converting into a string struct Conv is defined in ttmathtypes.h, look there for more information about parameters
return value:
Definition at line 3697 of file ttmathbig.h.
References ttmath::Conv::base, ttmath::Conv::comma, ttmath::Conv::round, ttmath::Conv::scient, ttmath::Conv::scient_from, and ttmath::Conv::trim_zeroes.
Referenced by ttmath::Big< exp, man >::Round(), and ttmath::Big< exp, man >::ToString().
uint ttmath::Big< exp, man >::ToString | ( | std::string & | result, |
const Conv & | conv | ||
) | const |
a method for converting into a string struct Conv is defined in ttmathtypes.h, look there for more information about parameters
Definition at line 3722 of file ttmathbig.h.
std::string ttmath::Big< exp, man >::ToString | ( | const Conv & | conv | ) | const |
a method for converting into a string struct Conv is defined in ttmathtypes.h, look there for more information about parameters
Definition at line 3732 of file ttmathbig.h.
std::string ttmath::Big< exp, man >::ToString | ( | uint | base = 10 | ) | const |
a method for converting into a string struct Conv is defined in ttmathtypes.h, look there for more information about parameters
Definition at line 3745 of file ttmathbig.h.
References ttmath::Conv::base, and ttmath::Big< exp, man >::ToString().
uint ttmath::Big< exp, man >::ToString | ( | std::wstring & | result, |
uint | base = 10 , |
||
bool | scient = false , |
||
sint | scient_from = 15 , |
||
sint | round = -1 , |
||
bool | trim_zeroes = true , |
||
wchar_t | comma = '.' |
||
) | const |
a method for converting into a string struct Conv is defined in ttmathtypes.h, look there for more information about parameters
Definition at line 3762 of file ttmathbig.h.
References ttmath::Conv::base, ttmath::Conv::comma, ttmath::Conv::round, ttmath::Conv::scient, ttmath::Conv::scient_from, and ttmath::Conv::trim_zeroes.
uint ttmath::Big< exp, man >::ToString | ( | std::wstring & | result, |
const Conv & | conv | ||
) | const |
a method for converting into a string struct Conv is defined in ttmathtypes.h, look there for more information about parameters
Definition at line 3787 of file ttmathbig.h.
uint ttmath::Big< exp, man >::ToUInt | ( | ) | const |
this method converts 'this' into uint
Definition at line 2318 of file ttmathbig.h.
Referenced by ttmath::Big< exp, man >::Big(), ttmath::Big< exp, man >::ToInt(), and ttmath::Big< exp, man >::ToUInt().
uint ttmath::Big< exp, man >::ToUInt | ( | uint & | result | ) | const |
this method converts 'this' into 'result'
if the value is too big this method returns a carry (1)
Definition at line 2333 of file ttmathbig.h.
References ttmath::Big< exp, man >::IsSign().
uint ttmath::Big< exp, man >::ToUInt | ( | UInt< int_size > & | result | ) | const |
this method converts 'this' into 'result'
if the value is too big this method returns a carry (1)
Definition at line 2466 of file ttmathbig.h.
References ttmath::Big< exp, man >::IsSign().
uint ttmath::Big< exp, man >::ToUInt | ( | unsigned int & | result | ) | const |
this method converts 'this' into 'result' (32 bit unsigned integer) this method is created only on a 64bit platform*** if the value is too big this method returns a carry (1)
Definition at line 3362 of file ttmathbig.h.
References ttmath::Big< exp, man >::ToUInt().
std::wstring ttmath::Big< exp, man >::ToWString | ( | const Conv & | conv | ) | const |
a method for converting into a string struct Conv is defined in ttmathtypes.h, look there for more information about parameters
Definition at line 3797 of file ttmathbig.h.
Referenced by ttmath::Big< exp, man >::ToWString().
std::wstring ttmath::Big< exp, man >::ToWString | ( | uint | base = 10 | ) | const |
a method for converting into a string struct Conv is defined in ttmathtypes.h, look there for more information about parameters
Definition at line 3810 of file ttmathbig.h.
References ttmath::Misc::AssignString(), ttmath::Conv::base, ttmath::Big< exp, man >::IsNan(), ttmath::Big< exp, man >::IsSign(), ttmath::Big< exp, man >::IsZero(), and ttmath::Big< exp, man >::ToWString().
|
friend |
in the method 'ToString_CreateNewMantissaAndExponent()' we're using type 'Big<exp+1,man>' and we should have the ability to use some necessary methods from that class (methods which are private here)
Definition at line 3899 of file ttmathbig.h.
|
friend |
output to standard streams
Definition at line 5971 of file ttmathbig.h.
|
friend |
output to standard streams
Definition at line 5982 of file ttmathbig.h.
|
friend |
input from standard streams
Definition at line 6070 of file ttmathbig.h.
|
friend |
input from standard streams
Definition at line 6081 of file ttmathbig.h.