java 负数的二进制表示
生活随笔
收集整理的這篇文章主要介紹了
java 负数的二进制表示
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
JAVA 基礎系列
計算機對有符號數(包括浮點數)的表示有三種方法:原碼、反碼和補碼,三種表示方法均有符號位和數值位兩部分,符號位都是用0表示“正”,用1表示“負”
反碼:原碼按位取反
補碼:反碼+1
移碼:移碼(又叫增碼)是符號位取反的補碼
對于負數而言,是以補碼的形式存儲在內存中的。以-7(int)為例
第一步:將-7的絕對值轉化為二進制 0000 0111
第二步:將上面的二進制以反碼表示 1111 1000
第三步:轉化為補碼:11111111111111111111111111111001
這個二進制的值可以通過Integer.toBinaryString()來獲取。int 在內存中占用4個字節
代碼:
public static void main(String[] args) {int d = -7; // System.out.print(""+Integer.toBinaryString(d)+" \n");}輸出結果:
11111111111111111111111111111001總結
以上是生活随笔為你收集整理的java 负数的二进制表示的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 运维 从月薪 5K 和 50K ,中间都
- 下一篇: 消息摘要算法-SHA算法实现