課程
/后端開發(fā)
/Java
/文件傳輸基礎(chǔ)——Java IO流
byte型數(shù)據(jù)(比如-14)和0xff進行與運算,會改變它的正負號嗎?
2017-04-27
源自:文件傳輸基礎(chǔ)——Java IO流 4-2
正在回答
byte---字節(jié)類型,即一個字節(jié),占8位,最高位為符號位,“0”表示正,“1”表示負,其余位表示數(shù)值的大小。
Java中用補碼表示二進制數(shù),補碼的最高位是符號位,最高位為“0”表示正數(shù),最高位為“1”表示負數(shù)。
正數(shù)補碼為其本身;負數(shù)補碼為其絕對值各位取反加1;
(-14),按照概念其絕對值為0000 1110,各位取反為1111 0001,再加1為1111 0010,即(-14)的二進制表示形式為11110010。
1111 0010 & 0xff,與運算后結(jié)果為1111 0010,結(jié)果還是(-14),所以不改變其正負號。
????
好像不對啊,我測試了一下,申明一個byte類型的數(shù)-14,輸出它與0xff與運算的結(jié)果,不是-14,而是242
袁初
舉報
為您介紹IO流的使用,以及對象的序列化和反序列化的內(nèi)容
2 回答不和0xff想與,結(jié)果有問題啊
1 回答請問關(guān)于0xff的問題
2 回答0xff的問題
1 回答0xff的作用
3 回答為什么位與0xff后能去掉前面的0
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2017-04-28
byte---字節(jié)類型,即一個字節(jié),占8位,最高位為符號位,“0”表示正,“1”表示負,其余位表示數(shù)值的大小。
Java中用補碼表示二進制數(shù),補碼的最高位是符號位,最高位為“0”表示正數(shù),最高位為“1”表示負數(shù)。
正數(shù)補碼為其本身;
負數(shù)補碼為其絕對值各位取反加1;
(-14),按照概念其絕對值為0000 1110,各位取反為1111 0001,再加1為1111 0010,即(-14)的二進制表示形式為11110010。
1111 0010 & 0xff,與運算后結(jié)果為1111 0010,結(jié)果還是(-14),所以不改變其正負號。
????
2017-04-28
好像不對啊,我測試了一下,申明一個byte類型的數(shù)-14,輸出它與0xff與運算的結(jié)果,不是-14,而是242