我在從一個字節中抓取n位時遇到了一些麻煩。從字節中抓取n位
我有一個無符號的整數。假設我們的十六進制數是0x2A,十進制數是42。在二進制中,它看起來像這樣:0010 1010.我將如何獲取前00位和後010位的3位,並將它們置於不同的整數中?
如果任何人都可以幫助我,這將是偉大的!我知道如何從哪個是簡單地做
int x = (number >> (8*n)) & 0xff // n being the # byte
我對堆棧溢出另一篇文章中看到
一個字節中提取,但我不知道如何讓單獨的位出字節。如果有人能幫助我,那會很棒!謝謝!
42的前5位(MSB)爲00000,因爲int總是大於1個字節。另外,不存在具有十六進制小數形式的無符號整數。 'int a = 0x2A;'與寫入int a = 42;' – user93353 2013-03-06 19:06:05