[英]NOT operator in GMP for C++
有什么方法可以否定 C++ 中mpz_class變量的每一位,例如找到它的按位補碼? 我正在尋找類似的東西 但是使用~num返回(-1) * num - 1並且cmp function 並沒有真正起作用,因為它不會更改任何參數值,它只返回1或-1 。 ...
[英]Unable to work with gmp and uint64_t under windows in a sane manner
以下代碼在 Linux/Debian (g++ 10.2) 下運行良好(編譯,斷言語句為真),但拒絕在 Windows (mingw64 g++ 12.2.0) 下運行。 它基本上只是應該將UINT64_MAX分配給gmp庫中的mpf_class ,但似乎 gmp 的mpf_class沒有為uin ...
[英]Problem of memory allocation after operations on 2D GMP integer matrix
我正在嘗試使用 2D GMP 整數矩陣。 我遵循了這個解決方案https://stackoverflow.com/a/49987570/7462275 。 這是我的程序 它按預期工作。 計算結果正確。 但是當for循環 ( for (int exponent=1; exponent<100;e ...
[英]How does gmp recognize a signed integer?
gmp 如何識別已簽名的 integer? 當我使用 gmp 庫時,我可以安全地將兩個大的正整數或無符號整數放入 mpz_tdiv_q () function 執行除法計算,但我很好奇當我使用 mp 將兩個 8 字節 ZCD69B4957F06CD818D7BF3D61980E291_Z 單元格 ...
[英]GMP detect float exponent overflow when initializing
我目前正在 64 位 Fedora 36 上編程,我意識到 GMP 浮點數對指數大小有限制: https://gmplib.org/manual/Floating_002dpoint-Functions 每個浮點數的指數都有固定的精度,在大多數系統上是一個機器字。 在當前的實現中,指數是 limbs ...
[英]how to use gmp random numbers and how to update the numbers witch click-button?
當我按下“生成密鑰”按鈕時,我想生成新的隨機數,但我總是得到相同的數字。 我初始化了 state、mpz_t 整數等,但我可能不知道如何正確使用它。 請幫忙。 ...
[英]How to take address of mpz_t passed as parameter in C code?
我有 C 代碼想要做這樣的事情: 此處的目的是避免使用g(*arg)表示的大量重復代碼——我希望它作用於原始輸入或修改后的版本。 但是雖然arg = &temp編譯得很好,但arg = &in卻沒有。 我知道這是因為mpz_t被 typedef'd 作為數組( typedef __ ...
[英]Division using GMP's low-level API
我正在使用 GMP 的低級接口( mpn_ ,請參見https://gmplib.org/manual/Low_002dlevel-Functions )進行一些固定大小的 192 位(三肢)integer 計算。 目前,我正在嘗試將一個隨機 uint192 除以另一個隨機 uint192,但無法 ...
[英]Faster way to add an `__int128` to an `mpz_class` or `mpz_t` of the GMP library?
我想使用128 位 integer 使用 g++和GMP的mpz_class (或mpz_t )來做到這一點: 我可以執行以下操作,但首先將__int128轉換為mpz_t似乎很慢: 如何從中獲得更多性能? ...
[英]How to set the precision of a 'rug::float' above the i32 that the precision parm takes in rust
我正在使用地毯為 rust 編程語言創建的貨物來計算非常不建議大數字,地毯應該是任意精度但是當我 go 使用 rug::Float::with_val 設置我的rug::Float的精度時rug::Float::with_val (prec i32: [some value larger than ...
[英]Is there a good reason why there's no mpz_tdiv_r_2exp_ui() in GMP?
GMP是一個快速的任意精度數學庫。 我將它用於 integer 算術。 integer 除法和余數有很多功能,但我錯過了 有什么理由不存在嗎? 順便說一句,為什么現有的 需要mpz_t r作為參數來獲取結果,而結果保證適合unsigned long int並且這已經返回? 這似乎是不必要的性能 ...
[英]MPFR: change max/min exponent
我使用 MPREAL 單頭庫作為 MPREAL 庫的 C++11 包裝器。 我想使用像10^−20000000000000=10^(-2*10^13)這樣的數字 但計算以0結束 跑步 等於帶倒號的min_exponent ,給出1073741823 在mpreal.h我發現以下幾行 問題 ...
[英]Does `gmp` library disregard index ordering in `[<-`?
考慮這兩個例子: 我是否遺漏了bigz對象的索引方式,或者這是庫中的錯誤? 添加: gmp 0.6.5 和 R-windows 4.2.0。 ...
[英]R language: unexpected precision returned from min.mpfr call
考慮: 我知道mpfr對象的 'min' 方法以某種方式潛入bigz或bigq類對象的 'min' 方法,但無法弄清楚精度如何或為什么會提高到如此大的值。 誰能詳細說明幕后發生的事情? 附錄:這似乎只有在我開始使用精度非常小的 mpfr 對象時才會發生。 如果我從foo <- mpfr( ...
[英]Efficient code to do set operations with bigz-class values?
包gmp的當前版本不支持集合操作,例如intersect 、 setdiff等。我正在處理數字序列(參見OEIS示例)並且需要處理大整數的大型集合。 我目前堅持使用各種循環來生成所需的差異或交叉點; 雖然我可能會生成已編譯的(Rccp 等)代碼,但我希望在現有的R函數和包中找到一種方法。 ...
[英]Cairo on M1 chip (gmp.h) error fixed solition
為了使我的更通用,請嘗試: CFLAGS=-I brew --prefix gmp /include LDFLAGS=-L brew --prefix gmp /lib pip install ecdsa fastecdsa sympy ...
[英]Is there a zero constant in the GMP library?
在一個程序中,我必須檢查某個數字是否等於零。 一種方法是初始化一個mpz_t並檢查原始數字是否等於它。 但是在 GMP 中肯定有一個零常量,比如 Java 和 Kotlin 中的BigInteger.ZERO ? (不知何故,此頁面不包含我想要的內容;我確實“檢查了精美的手冊”並使用了搜索引擎, ...
[英]shift right/left (Bitwise Operators) in php7 gmp extension
php7 gmp 擴展中shift right/left (按位運算符)的 function 名稱是什么? 沒有找到類似gmp_shiftr的東西。 ...
[英]Using GMP, omit mpz_clear() after mpz_roinit_n()?
The GMP library provides a big int C API and a C++ API which wraps the C API. 通常你通過做初始化一個mpz_t結構(C API) (參見5.1 初始化函數)。 這樣做時,您稍后必須使用mpz_clear(integ) ...