Tôi quan tâm đến việc viết một hàm getMyByteChunkFunction
chấp nhận hai tham số - một số nguyên 32 bit và một byte bù đắp (0, 1, 2 hoặc 3), sau đó trả về byte tương ứng của số nguyên 32 bit. Ví dụ: cho số nguyên này:Toán tử bitwise để lấy byte từ 32 bit
(3) (2) (1) (0) ---byte numbers
int word = 10101010 00001001 11001010 00000101
gọi hàm getMeByteChunkFunction(word, 2)
trả về 00001001
.
Tuy nhiên, tôi bị giới hạn ở các toán tử bitwise mà tôi có thể sử dụng. Tôi chỉ được phép sử dụng >>
, <<
và chính xác một lần trừ. Tôi biết làm thế nào để làm điều này bằng cách sử dụng AND và XOR, nhưng tôi không biết làm thế nào tôi muốn sử dụng một phép trừ ở đây. Bất kỳ ý tưởng?
Tagged as bài tập về nhà (phải thả "logic" vì max 5 thẻ.) –
@JBentley: Tôi đã bình luận rằng hai năm trước đây. –