Sono interessato a scrivere una funzione getMyByteChunkFunction
che accetta due parametri: un numero intero a 32 bit e un offset di byte (0, 1, 2 o 3), quindi restituisce il byte corrispondente del numero intero a 32 bit. Ad esempio, in questo intero:Operatore bit a bit per ottenere byte da 32 bit
(3) (2) (1) (0) ---byte numbers
int word = 10101010 00001001 11001010 00000101
la chiamata di funzione getMeByteChunkFunction(word, 2)
rendimenti 00001001
.
Tuttavia, sono limitato agli operatori bit a bit che è possibile utilizzare. Sono autorizzato a utilizzare >>
, <<
e esattamente una sottrazione. So come farlo usando AND e XOR, ma non so come utilizzerei una sottrazione qui. Qualche idea?
Etichettato come compiti a casa (dovuto cadere "logica" perché max 5 tag.) –
@JBentley: ho fatto quel commento di due anni fa. –