int main()
{
#if 0
- //unsigned buf[5] = { 0xfffffffe, 0xffffffff, 0xffffffff, 0xffffffff, 0 };
+ unsigned buf[5] = { 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0 };
//unsigned buf[3] = { 0xffffffff, 0x1, 0 };
- number< unsigned > nu = 0xffffffff;
+ number<> nu(buf, 4);
//number< unsigned > nu2(nu);
- number< unsigned > nu2 = 1u;
+ number<> nu2 = 2u;
std::cout << "nu = " << nu << "\n\n";
std::cout << "nu2 = " << nu2 << "\n\n";
std::cout << "nu + nu2 = " << nu + nu2 << "\n\n";
+ std::cout << "nu * nu2 = " << nu * nu2 << "\n\n";
+ std::cout << "nu^nu2 = " << potencia(nu, nu2) << "\n\n";
#endif
+#if 0
number< unsigned > nu = 0xffffffff;
std::cout << "nu = " << nu << "\n\n";
nu << 5;
std::cout << "nu = " << nu << "\n\n";
- return 0;
+ number<> n1 = 0x00000000;
+ number<> n2 = 0x00000000;
+
+ n2 += 1;
+
+ n1 <<= 1;
+ n2 <<= 1;
+
+ if (n1 < n2)
+ std::cout << "n1 es menor que n2\n";
+ else if (n2 < n1)
+ std::cout << "n1 es mayor que n2\n";
+ else
+ std::cout << "n1 es igual que n2\n";
+
+ std::cout << "\n";
+
+
+// for (int j=0; j<10; j++)
+// n1.borrow(0);
+ std::cout << "n1: " << n1 ;
+ std::cout << "\n";
+ std::cout << "n2: " << n2 ;
+ std::cout << "\n";
+
+ n1 -= n2;
+
+ std::cout << "n1-n2: " << n1 ;
+#endif
+
+ uint32_t buf[] = { 0x00000040, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 };
+ number<> nu(buf, 8);
+ number<> nu2 = 0x2;
+ std::cout << "nu = " << nu << "\n\n";
+ std::cout << "nu2 = " << nu2 << "\n\n";
+ std::cout << "nu * nu2 = " << naif(nu, nu2) << "\n\n";
+
+ return 0;
}
+