已采納回答 / charsandrew
這里你理解錯(cuò)了,他說的是按位取反,一個(gè)位只有1或0;所以1取反是0,如果是按1這個(gè)數(shù)取反,應(yīng)該是-2
2016-06-17
已采納回答 / 菲爾活該
public class Coner1 {public static byte[]int2bytes(int id){byte[] arr=new byte[4];//創(chuàng)建一個(gè)數(shù)組,長(zhǎng)度為四arr[0]=(byte)((int)id>>0*8 & 0xff);//0xff報(bào)錯(cuò)Oxff cannot be resolved to a variablearr[1]=(byte)((int)id>>1*8 & 0xff);arr[2]=(byte)((int)id>...
2016-06-17
最贊回答 / Airly
前面有一章是“按位與運(yùn)算”,講到&的一個(gè)特殊用法是用來取指定位數(shù)(假設(shè)8143為X,想要取X對(duì)應(yīng)的某個(gè)位段,相應(yīng)位段的值全部為1,其余位為0,即可得到指定位)0*8就是沒有移,然后做按位與運(yùn)算(&0xff),得到第一個(gè)低端位[解釋下0x開頭代表十六進(jìn)制,F(xiàn)二進(jìn)制代表1111,則0xff代表1111 1111]1*8就是像右移8位,那么舍棄掉右邊的8位,就得到第二個(gè)低端位2*8就是像右移16位,那么舍棄掉右邊的16位,就得到第三個(gè)低端位3*8就是像右移24位,那么舍棄掉右邊的24位,就得到第...
2016-05-29
最贊回答 / zouppan
反碼表示法規(guī)定:正數(shù)的反碼與其原碼相同;負(fù)數(shù)的反碼是對(duì)其原碼逐位取反,但符號(hào)位除外。如:原碼10010= 反碼11101 (10010,1為符號(hào)碼,故為負(fù))所以14的反碼還是14.
2016-04-25
已采納回答 / qq_云在風(fēng)中_0
實(shí)際開發(fā)中用到的不多,但是要處理亂碼的時(shí)候要用到,還有就是想成為高手,必須懂。int轉(zhuǎn)換成2進(jìn)制字節(jié)型數(shù)組說白了就是將一個(gè)整數(shù)變成2進(jìn)制表示,從右到左按照每八位劃分開一個(gè)字節(jié),共四個(gè)字節(jié),也就是一個(gè)索引位4的數(shù)組。例如:00000000 00000000 00000011 00110011表示成十進(jìn)制就是819,這里我解釋一下,int在java中是4字節(jié)存儲(chǔ),4個(gè)字節(jié)恰好是32(4*8=32)位、每個(gè)字節(jié)是8位,字節(jié)是計(jì)算機(jī)中存儲(chǔ)的一個(gè)單位,用8位2進(jìn)制數(shù)表示。將一個(gè)整數(shù)轉(zhuǎn)化成2進(jìn)制字符串可以用?Stri...
2016-04-11
已采納回答 / Lynn丶Hung
? ?二進(jìn)制用補(bǔ)碼進(jìn)行運(yùn)算。3的補(bǔ)碼是00000011(注:最高位0表示為正數(shù)、若為1則表示為負(fù)數(shù);正數(shù)的補(bǔ)碼與原碼、反碼相同),1的補(bǔ)碼是00000001;然后把這兩個(gè)數(shù)相加(注:相加2進(jìn)1)得到00000100(把它轉(zhuǎn)化為原碼還是00000100即為4)
2016-03-21