按位取反计算

正整数取反:例如1(1字节8位数)
原码:00000001
->补码:00000001
->取反:11111110
(此时为负数,计算机内数值以补码保存,会认为这是一个负数的补码,负数原码和补码不同需要转变为反码,再转变为原码)
->补码+(-1)转变为其反码:11111101->反码除符号位按位取反得到其原码1000
0010即﹣2;
所以输出﹣2
负整数的取反过程:例如﹣1(1字节8位数)原码:10000001(以补码形式存储,负数应该先求补码)
->反码:11111110
->补码:11111111(计算机以补码保存)->取反:00000000即0(正数的原码反码码相同);
所以输出为0


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部