31 lines
619 B
C++
31 lines
619 B
C++
#include <iostream>
|
|
|
|
#include "mp.hpp"
|
|
|
|
template <class T>
|
|
static void PrintInt(const char* name, const T& val)
|
|
{
|
|
std::cout << name << " = " << mp::ToHexString(val) << std::endl;
|
|
}
|
|
|
|
int main()
|
|
{
|
|
// mp::Int a{0xDEADBEEFDEADF154, 0x0123456789ABCDEF, 0x1111222233334444};
|
|
mp::Int<4> a{0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF};
|
|
mp::Int<5> b{0x55};
|
|
|
|
PrintInt("a", a);
|
|
PrintInt("b", b);
|
|
|
|
auto c = a + b;
|
|
PrintInt("c", c);
|
|
|
|
a += mp::Int<1>{1};
|
|
PrintInt("a", a);
|
|
|
|
a -= mp::Int<1>{1};
|
|
PrintInt("a", a);
|
|
|
|
std::cout << mp::Int<16>::LAST_ELEM_MASK << std::endl;
|
|
|
|
} |