本帖最后由 ringxxx 于 2015-7-8 00:31 编辑
{:3_49:}
敬爱的版友们,我是刚入学java基础班,今天在学习的过程中有一个问题总是想不通,在刘意老师的视频中介绍到反码时说正数的反码跟正数的原码是相同的,
但是在看到学习资料中的位运算符时,有个反码运算符~,上面是~6 = -7,~6不就是6的反码吗,6不是正数吗,反码不还是他的原码吗,怎么回事-7呢?
6的原码[size=13.9999990463257px]00000000 [size=13.9999990463257px]00000000 [size=13.9999990463257px]00000000 00000110 反码和补码都是 [size=13.9999990463257px]00000000 [size=13.9999990463257px]00000000 [size=13.9999990463257px]00000000 00000110,这和-7的二进制压根儿不着边啊:-7的二进制:[size=13.9999990463257px]11111111 [size=13.9999990463257px]11111111 [size=13.9999990463257px]11111111 11111[size=13.9999990463257px]001 ????又说是二进制在运算和存储时都是用的补码,那-7的补码是:10000000 00000000 00000000 00000111这和6的反码补码都不一样啊!
求大神们指导!!!感激不尽!!!
|
|