cost 340 ms
將 colors 與 C 中的位域與按位運算符混合?

[英]Mixing colors with bitfields in C with bitwise operators?

我正在閱讀關於位域的 Wikipedia 條目,看到如何使用二進制數來表示主要的 colors 並使用按位或 ( | ) 運算符組合它們。 我想檢查一種顏色是否包含在另一種顏色中。 我明白為什么會這樣,但是是否有按位運算或其組合可以達到我想要的結果? ...

按位或 (|) 和按位運算符 (~) - Javascript

[英]Bitwise OR ( | ) and Bitwise Operator ( ~ ) - Javascript

挑戰:給定整數N和K (其中2 <= K <= N ),找到A & B的最大值(即 A 按位與 B)使得0 <= A < B <= N和(A & B) < K 我已經制作了我的代碼,它在可見情況下運行完美,但在隱藏情況下卻失敗了。 我的代碼:fun ...

如何僅使用 C 中的按位運算符來檢查值是否大於 7?

[英]How to check if values are greater than 7 by only using bitwise operators in C?

對於這個問題,它要求如果參數大於 7 則返回 1,否則返回 0。 例如,如果 x 為 8,則 function 將返回 1。如果 x 為 7,則 function 將返回 0。 唯一允許的合法運算符是 (, ~ & ^ | + << >>),它禁止使用任何其他內容, ...

如何僅通過在 C 中使用按位運算符將 integer 乘以負二?

[英]How can I multiply an integer by negative two by only using bitwise operators in C?

對於賦值,我需要通過僅使用 (. ~ & ^ | + << >> ) 的二元運算符來復制 (-2 * x) 的 C 表示的效果,這意味着不使用循環,if 語句。 等,我們可以假設系統使用 2 的補碼和 32 位整數表示,執行算術右移。 並且在將 integer 移動 ...

當 C 中存在某個數組元素時顯示消息

[英]Displaying a message when a certain array element is present in C

當某些元素為'y'或所有元素為'n'時,此程序會顯示某些消息。 我的問題是關於這一行: someElements |= array[i] == 'y' 。 我理解可以這樣寫: someElements = someElements | array[i] == 'y' someElements = ...

從字節數組中提取位

[英]Extract bits from a byte array

我正在嘗試制作一個 function,它從字節數組中提取位並從中返回十進制 output。 這些是我為此使用的功能。 例如,我會這樣稱呼它: 在大多數情況下,此功能在位(開始和結束)時工作正常。 但是當我嘗試讀取數據位於兩個不同字節中的位時,它會失敗。 這是我將使用的塊的一些視圖: 例如: 這有效並 ...

獲取 n 位的最大數

[英]Get highest number with n bits

我想在 C++ 中獲得 n 位的最高數字。我已經編寫了這段代碼,但也許有更有效的方法。int A = 22; // 10110 int max = pow(2, (int) log2(A) + 1) - 1; // returns 31 (11111) 此代碼計算 A 的位數的 2 次方並減去 ...

負數按位運算結果的位長是如何計算的?

[英]How is the bit length of a result of a bitwise operation for negative numbers calculated?

在以下操作中如何確定結果中的值位數: ? 因此,看起來按位 AND 會導致兩個操作數之間的值位數最多,而按位 OR 會導致兩個操作數之間的值位數最少。 然而,按位異或完全沒有意義。 第二個最低位是如何設置為 0 的? 為什么值位數大於任一操作數中的值位數? ...

如何通過將最后一位設置為 1 來“標記”指針?

[英]How to "mark" pointers by setting the last bit to 1?

我正在嘗試標記和取消標記指針,以便我可以實現非阻塞鏈表。 我檢查了我的體系結構中最后一位從未使用過,所以我試圖使用更改它來標記/取消標記指針。 我正在嘗試執行 OR 以將最后一位設置為 1,執行 AND 以取消設置它並執行 AND 以檢查它是否設置為 1。問題是當我對指針執行按位(注釋的宏)操作時 ...

當我在C對integer 1進行按位翻轉運算時,得到-2而不是4294967294,如何得到4294967294?

[英]When I do bitwise flip operation in C on integer 1, I get -2 and not 4294967294, how can I get 4294967294?

這是新手 HackerRank 問題之一,它要求翻轉由 32 位表示的 long 的位,並返回值。 例如: 1表示為:00000000 00000000 00000000 00000001 ~ 運算符翻轉它的位。 所以 ~1 = 11111111 11111111 11111111 11111 ...

java的if條件中的按位運算符必須寫在括號內。 為什么會這樣?

[英]Bitwise operator in java's if condition has to be written inside parentheses. Why is it so?

在 Java 的 if 條件下,我似乎無法像其他運算符(例如% 、 / 、 +等)一樣在沒有括號的情況下編寫按位運算符(例如& )。import java.util.*; public class alpha{ public static void main(String arg ...

C循環左右移位

[英]Circular right and left shift in C

我在 C 做循環右移和左移,我哪里錯了。 對於右旋轉,如果我將輸入設為 123,將旋轉次數設為 3,則我得到的 output 是錯誤的。 請幫我找出錯誤。 ...

SQLite 主鍵為兩列時 DELETE 變慢

[英]SQLite DELETE slow when primary key is two columns

我有一個 SQLite 表,定義如下: 我在大型事務中執行的內部循環操作之一是: 此操作似乎是我的應用程序的瓶頸。 當我運行 strace 查看應用程序在做什么時,我看到它對數據庫文件進行大量連續的 1024-KiB pread64調用,這表明刪除實際上可能需要對表進行線性掃描,而不是簡單的索引抬頭 ...

*** 檢測到堆棧粉碎 ***:已終止

[英]*** stack smashing detected ***: terminated

我是初學者,正在使用 Arrays 開關盒和 arrays 概念編碼循環,使用 arrays 對二進制數進行一些操作在這里,我能夠按預期獲得 output,但我無法弄清楚 *** 的問題檢測到堆棧粉碎 ***:已終止。 這是在 output 的末尾,我不知道為什么; 有人可以幫我嗎? 請告訴我錯誤 ...

如何從 MSB 開始交換兩位?

[英]How can I swap two bits starting from MSB?

我正在尋找一種方法來交換給定 position 的 2 位,但計數從 MSB(最高有效位)開始到 LSB(最低有效位)。 假設我有 position p1 = 0 和 p2 = 2,我的號碼是1000 = 8。結果應該是0010 。 我試過這段代碼,但它交換了從 LSB 到 MSB 的位。 我如何 ...

將數字左循環 N 位

[英]Left rotate number by N bits

假設我有這個數字,例如: 11在基數 2中表示為: 1011 。 我想將這個數字左轉 N位。 因此,如果N = 5 (0101),則1011向左旋轉5應該是0111 = 7。此外,數字應始終以 4 位表示。 我試過這種方法,但無法弄清楚 SIZE 應該是多少。 如果我將 SIZE 設置為 8,它的 ...

向自身添加一個字節按位移位到 MSB

[英]Bitwise Shift to MSB in One Byte Added to Itself

我正在讀 Lewis Van Winkle 的書“Network Programming with C”,我發現第 5 章第 153 頁的一行代碼我不明白其價值。 上下文是通過標頭圍繞 DNS 解析。 以下代碼的價值或實際應用是什么: 我知道 int 是比 char 更廣泛的類型,但如果您選擇更深 ...

如何對不同大小的位集進行位運算?

[英]How to perform bitwise operations on bitsets of different sizes?

有沒有辦法對兩個不同大小的std::bitset執行按位運算? 類似於此: 對於上面的示例,我基本上想將所有 8 位payload傳輸到segment的低位。 如果無法做到這一點,我還有哪些其他選擇? 我是否應該編寫一個 for 循環,使用下標operator[]來逐位傳輸? ...


 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM