Advertisement
Guest User

Untitled

a guest
Dec 21st, 2014
184
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.76 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. #include <cstdint>
  4. using namespace std;
  5.  
  6. #include <boost/multiprecision/cpp_int.hpp>
  7. using namespace boost::multiprecision;
  8.  
  9. #if 0
  10.  
  11. union uint512_c
  12. {
  13. uint512_t t;
  14. unsigned char c[512/8];
  15. };
  16.  
  17. void print_ui512(uint512_t num)
  18. {
  19. uint512_c uc;
  20. uc.t = num;
  21. for(int i=0; i < (512/8); i++)
  22. {
  23. int byte = uc.c[i];
  24. printf("%02X", byte);
  25. }
  26. printf("\n");
  27. }
  28.  
  29. #else
  30.  
  31. void print_ui512(uint512_t num)
  32. {
  33. unsigned char *cnum = (unsigned char *) &num;
  34. for(int i=0; i < (512/8); i++)
  35. {
  36. int byte = cnum[i];
  37. printf("%02X", byte);
  38. }
  39. printf("\n");
  40. }
  41.  
  42. #endif
  43.  
  44. int main()
  45. {
  46. uint512_t num = 1;
  47.  
  48. print_ui512(num);
  49. cout << hex << setfill('0') << setw(512/8*2) << num << endl;
  50.  
  51. return 0;
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement