------- android培训、java培训、IOS培训期待与您交流! ----------
最近在学习C语言过程中,遇到原码、反码和补码相关内容容易混淆,查了相关资料后做个简单整理,希望能帮助到大家!!!O(∩_∩)O~
首先,在我们计算机内,有三种符号数的表示方法:原码、反码和补码。
1.原码、反码和补码的概述:
原码:就是二进制定点表示法,即最高位为符号位,“0”为正,“1”为负,其它位表示数值的大小。
反码:表示法规定:正数的反码与原码相同;负数的反码是对其原码逐位取反。注意:符号位(即最高位)除外。比如:原码10011=反码 11100
补码:表示法规定:正数的补码与其原码相同;负数的补码是在其反码的末位加1。
2.举例子来说明三者间的区别
1>原码:直接在数值前加一符号位的表示法。
结构为:符号位 数值位
例如: + 5 原= 0 0000101B
- 5 原= 1 0000101B
这里需要注意的是:0的原码有两种形式:+0=0 000