[GESP202512 C++ 三级] 判断题第 9 题
【题目描述】给定一个正整数 a 当需要计算 -a 的补码时有这样一个计算技巧将 a 的二进制形式从右往左扫描遇到第一个 1 之后将找到的第一个 1 左边的所有位都取反能得到 -a 的补码。答依据原码、反码、补码的定义可知65 及 -65 的原码、反码、补码如下表所示。原码反码补码650011 01010011 01010011 0101-651011 01011100 10101100 1011据此表进行验证题设陈述已知 65 的二进制为 00110101从右往左扫描将找到的第一个 1 左边的所有位都取反得 11001011。其恰为 -65 的补码。据此可知题设结论是正确的。------------------------------- 原码、反码、补码的定义 -------------------------------正数的反码等于其原码。正数的补码等于其原码。负数的反码等于对负数原码符号位以外的各位取反0变11变0。负数的补码等于负数的反码加1。【参考文献】https://blog.csdn.net/hnjzsyjyj/article/details/119720322https://blog.csdn.net/hnjzsyjyj/article/details/119722653
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2617316.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!