2009-06-28 20 views
15

Tôi đang tìm kiếm một C++ lớp/thư viện cung cấp 1024 bit và số nguyên và hoạt động giống như lớn hơn: - bit chuyển, - Bitwise OR/AND, - vị trí đầu tiên không chútbigint (bigbit) thư viện

tốc độ là rất quan trọng, vì vậy nó sẽ phải được thực hiện với một số lắp ráp SIMD.

Trả lời

14

Có một số, bao gồm GMP, nhưng đối với tốc độ, tốt nhất có thể là TTmath. Quyết định thiết kế của TTmath sử dụng độ dài cố định theo thời gian tại compiletime cho phép nó khá nhanh.

4

thử gmp library. Nó là một thư viện C. Bắt đầu với GMP 4.0 một trình bao bọc C++ đi kèm với bản phát hành.

1

Chỉ cần xem xét phép nhân số nguyên lớn, Thư viện TTmath sử dụng thuật toán Karatsuba, có độ phức tạp về thời gian $ O (n^{1.585}) $. Thuật toán nhanh nhất là $ O (n log n log log n) $, sử dụng FFT.