強制轉換

整數類型 byte

1.佔一個字節,8位,範圍是-128~127,用8個2進制可以表示2的8次方個變化。如果一個大於127的數轉換成byte類型值是多少呢?
例1:byte a1 =(byte)(333);
333 =256 +64+ 8+ 4 +1
二進制表示 101001101 取後8位是 01001101 第一位是符號位,01001101=1+4+8+64=77
所以a1=77
例2:byte a2=(byte)3333;
二進制表示爲 (101001101 )
(2+1)=1010011010 + 101001101 =1111100111
取後8位是 11100111,第一位是符號位,1表示負 對於byte來說這是負數的補碼,
符號位不變,其他位取反,末尾加1 可得到原碼,所以原碼爲10011001 等於-25

在這裏插入圖片描述2.-77 的 原碼:11001101 反碼 10110010 補碼爲 10110011
計算機中負數用補碼錶示即10110011

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章