導航:首頁 > 編程語言 > java轉負數

java轉負數

發布時間:2023-03-11 03:20:34

㈠ 關於java中負數計算的一些問題

給你用8位的解釋一下:

  1. -3的補碼轉換過程:(1)、先寫出-3的原碼為 1000 0011(最前邊的1為符號位),然後求出-3的反碼為 1111 1100,則-3的補碼就為1111 1101 ,其中原碼轉補碼的規則為除過符號位,逐位取反,末尾加1,所以-3的補碼為:1111 1101。

  2. 右移兩位,就變為1111 1111,其中高位用1填充。

㈡ JDK Integer.java的toString為什麼i是正數要轉換為負數處理

Integer.max_value = 01111111 111111111111111111111111
+1 = 10000000 00000000 00000000 00000000
最高位是符號位為1,這個數是負數,負數的源碼是補碼取反+1,剛好等於Integer.min_value

結果當然是負數了,Integer的最小值

㈢ 為什麼java中文轉byte出現負數

GBK採用雙位元組8位表示,總體編碼范圍為 8140 -- FEFE,首位元組在 81 -- FE 之間,尾位元組在 40 -- FE 之間。
ASCII是7位編碼,只使用前7位,第8位補0,所以轉換成整數始終為正數,而GBK是8位編碼,也就是說一個位元組中的第8位可以為1,如1010 1101,而將其轉換成byte類型時,byte值為10101101,以補碼存儲,第8位被當成符號位,當然是負數了,值為:-83。
「何」字的GBK編碼是:BA CE(1011 1010 1100 1110),兩個位元組第8位都為1,對byte類型來說,都被理解為最高位符號位。這樣值就變成-70和-50了。

㈣ java里用Integer.parseInt()把負數的二進制轉化十進制會拋異常怎麼辦,有什麼辦法能轉化

Integer.parseInt(String s, int radix) 這個方法本身就不能轉負數,只能轉正數。如果你想轉換-1,那隻能是 Integer.parseInt("-1",2),同理,轉-123,只能 Integer.parseInt("-1111011",2),即在本身正數對應2進制之前加一個「-」號。

對於「已知一個負整數的二進制數,求這個數的十進制數」這類問題的話,那麼方法如下:
對字元串操作,取反碼,然後再按照上文所述方式轉換,就可以得到所求負數+1,再-1,就可以得到所求負數

記得給分呦,親~~~~

㈤ java如何表示負數

int i = -1;望採納,你不想使用負號標示那就用2進制唄

閱讀全文

與java轉負數相關的資料

熱點內容
javadoc導入android 瀏覽:515
文件掃描成pdf 瀏覽:696
涼山火災救援命令 瀏覽:50
壓縮機三相檢測 瀏覽:859
linux怎麼安裝光碟 瀏覽:797
寬頻伺服器無響應是為什麼 瀏覽:224
壓縮包內看圖 瀏覽:912
安卓手機如何發現app後台調用情況 瀏覽:559
程序員簡歷工作描述 瀏覽:157
伺服器中強制疾跑的指令是什麼 瀏覽:52
日語命令性 瀏覽:259
免費的程序編譯游戲 瀏覽:890
如何安裝屏蔽的APP 瀏覽:196
豬臉識別app如何下載 瀏覽:154
卓嵐串口伺服器如何使用 瀏覽:438
pdf周振甫 瀏覽:756
程序員35歲生日圖片 瀏覽:626
矩形密封圈的壓縮量 瀏覽:455
信息安全中圖像加密技術畢業論文 瀏覽:536
gear2刷android 瀏覽:79