原因是这样的,先进行取余运算0000 1101 (13)1111 0010然后进行<<21100 1000因为这个时候符号位已经为1,而数在计算机中用补码表示所以真值为(1100 1000)补为1011 1000为-56明白了吗??
也就是说只有负数才会在计算机中以补码显示?
~求反,单目^异或,双目~比^运算的优先级高很多,至于编码,还要看在什么环境下,有些int 16bit,有些是32bit,楼主可以去看看计算机组成原理课本,