礼品代发网

礼品代发网

收录130107113题,礼品代发网免费搜题解答

今日已更新0道题

int 多少也是-int等于多少位

2025-11-20 06:40:32  

int 多少也是-int等于多少位

优质解答

当int是负数的时候,取绝对值再转二进制,位数可能多一位。比如-8转二进制是1000,8也是1000,但负数绝对值转二进制后位数不变,实际存储时补码占用的位数和正数相同。计算的时候要看绝对值对应的二进制位数。

为啥这样呢?因为计算机用补码存储负数,比如8的二进制是1000(4位),-8的补码也是1000,但原码其实是10001000(8位)。不过实际存储时都占4位,所以计算位数要看绝对值对应的正数二进制位数。例如-8的绝对值是8,转二进制是1000(4位),所以和正数一样占4位。但如果是-15,绝对值15转二进制是1111(4位),和正数15一样占4位。这里有个例外,当int是-1的时候,补码是全1,比如32位就是31个1加1个符号位,绝对值1转二进制是1(1位),但实际占32位。所以结论是负数取绝对值转二进制位数和正数相同,但存储时补码位数不变。

本题链接:

整数位数转换二进制补码