integer-arithmetic

    -3熱度

    1回答

    這是一個雙重問題。 我一直在閱讀關於編譯器如何處理代碼的錯綜複雜的問題,並且我有這種困惑。這兩個過程似乎都遵循相同的符號整數符號擴展邏輯。那麼轉換是否僅僅作爲算術右移來實現呢? 其中一個例子規定的函數,如 Int Fun1(unsigned word) { Return (int) ((word << 24) >> 24); } 傳遞的參數爲0×87654321。 由於這將在轉換

    3熱度

    1回答

    我想實現多倍無符號減法,在在C有限域(P = 2^191-19),但我無法弄清楚如何處理借位! 我的操作數在基數2^16表示爲: typedef unsigned long long T[12]; 這意味着T型陣列的每個元件具有完全相同的16比特數據(基數2^16表示)。 現在我想減去T形的兩個操作數,但我不知道哪一個是小!如果結果爲負數,我想將結果添加到素數值以在模算術中獲得積極結果。 這裏

    0熱度

    1回答

    我可以用這樣的檢查...... private static readonly int IntMaxValue = int.Parse(int.MaxValue.ToString()); private static bool IsChecked() { try { var i = (IntMaxValue + 1); return false; }

    2熱度

    2回答

    我必須做內核整數算術,具體而言,我需要增加一個size_t對象的一些三角洲,這將經常發生。所以我想知道是否需要防範內核中可能發生的整數溢出,如果是,內核是否爲此提供了宏或API?

    -1熱度

    1回答

    我對C++比較陌生,我試圖創建一組能夠處理大數字的算術函數,使用一個名爲biggie的結構來處理像字符串這樣的數字。我目前在減法功能上遇到困難。 當我運行嘗試減去小數字,它工作得很好。當我嘗試按比例放大時,第一次調用該函數時效果很好。 第二次我用大數字來調用它,在另一個稍後會找到兩個大數字的GCD的函數中,答案會隨着不同的運行時間而略微變化。有時,它與第一個輸出完全相同。其他時候,只有3位數字是錯

    -2熱度

    2回答

    這可能已經被問到了,但我在這個論壇上找不到它。在對大整數進行算術運算時,我對C++中的整數算術有個普遍的疑問。 unsigned int value = 500000; value = (value * value) % 99; 正確的值到上面的代碼是25,但是當這是用C++實現,我得到的90 值我看着拆卸,這給了我一個輕微的想法,爲什麼它可以回來與一個錯誤值,拆裝是如下 unsigned

    0熱度

    2回答

    我需要在MIPS彙編中實現一些代碼,特別是使用定點算法。我錯過了什麼,或者那裏沒有這樣的事情?如果它不是MIPS的一部分,我如何使用整數實現定點,即add/sub/mul/div?

    2熱度

    2回答

    我看到,下面的代碼: byte b = 127; b = b + 1; b = b + 1; System.out.println(b); 導致邊界運行時間期間檢查,並且所述第一加法取B OUT的範圍,導致以下錯誤 - Main.java:11: error: incompatible types: possible lossy conversion from int to byte b

    -1熱度

    3回答

    使用命令行,我定義了兩個變量 set a = 5 set b = 5 另外我設置另一個變量,c,在我試圖分配a的和b的價值。 我試過 - set c = $($a+$b) 但我有Illegal variable name. 我試過 - set c c = $($a+$b) 但我有Illegal variable name.,再次。

    6熱度

    2回答

    是否有可能創建一個謂語max/2沒有蓄能器,使max(List, Max)爲真,當且僅當Max是List最大值(整數列表)?