bit-manipulation

    1熱度

    1回答

    int i = 0x000000FF; i = i << 24; message = String.format("0x%08X", i); // prints the message 0xFF000000 int i = 0x000000FF; i = i << 32; message = String.format("0x%08X", i); // prints the m

    1熱度

    3回答

    我有一個整數,我想檢查一位是0還是1. 這樣做的最佳做法是什麼? 的我在這個時刻做一個例子: const myInt = 8; // Binary in 32 Bit integer = 00000000000000000000000000001000 const myBit = myInt <<28>>> 31; // 00000000000000000000000000000001 if

    1熱度

    1回答

    我有一個來源Float32Array,我從中創建了一個輔助Float32Array。我有一個值爲model的序列,我想將其作爲重複序列複製到第Float32Array。我目前正在使用reverse while循環執行此操作。 sequence = [1, 0, 0, 0, 0, 1, 0, 0, 2, 0, 1, 0]; n = 3179520; //divisible by sequence

    -1熱度

    1回答

    所以我有一個位域,像這樣: unsigned int foobar:1; 然後我將它使用此代碼 uint32_t code = loadCode(); structure.foobar = code & 2; 所以,如果code設置爲2,將這個意味着foobar的設置爲1 ,0還是未定義?我使用的確切標準實際上是C++ 11,不是純C.

    0熱度

    4回答

    我對按位運算有很好的理解。我的問題是特定案例。在從Oracle教程採取下面的代碼,是有可能改變的表達: if ((foundMods & searchMods) == searchMods) 到: if (foundMods == searchMods) ? ...因爲我們沒有提取任何標誌,我們只是在測試平等。對? ...或者我錯過了什麼? import java.lang.reflect

    44熱度

    6回答

    只見代碼here下面一行中C. int mask = ~0; 我已打印的mask在C和C++的值。它始終打印-1。 所以我有一些問題: 爲什麼到面具變量分配值~0? ~0的用途是什麼? 我們可以用-1代替~0嗎?

    1熱度

    1回答

    我正在尋找存儲4個無符號值,一個布爾(或整數),兩個整數與最大(包括)64和一個整數,可以存儲至少100,000。成一個單一的散列。 使用信息我發現here 我可以編碼和解碼2之間 - 與255的最大整數的4像這樣 static int encode(int a, int b, int c, int d) { return a & 0xff | (b << 8) | (c << 16)

    4熱度

    5回答

    的,我注意到一些奇怪的行爲與支架 bitshifting #include <stdio.h> int main(void) { unsigned char c; unsigned char d; c = 153; c = (c << 7) >> 7; printf("%d\n", c); d = 153; d = (

    0熱度

    1回答

    java,當我把int簡寫爲int時,int的哪個部分會丟失。 例如,當INT I = 32768,當我投i到短,這部分將丟失 如在java中,INT具有32個比特,並且短只有16位,鑄造int到short時,高16位會丟失還是低16位?

    0熱度

    1回答

    我正在開展個人項目,以提高我對CPU工作方式的瞭解。所以我正在做一個Intel 8080模擬器,它是一個8位微處理器。 在RRC指令,該指令example的實施過程是這樣: case 0x0f: { uint8_t x = state->a; state->a = ((x & 1) << 7) | (x >> 1); state->cc.cy = (1 == (