原码表示法:x=5=+1001,则x的原码表示为:0 1001;同理x=-5,则原码为:1 1001
原码表示法的特点:简单易理解,加法运算复杂
补码表示法:将负数的原码除符号位之外全部按位取反后加1
举例: x=5=0 1001,若以8位存储,则x的补码为:0 0001001
x=-5=1 1001,则x的补码为:1 1110111
特例:原码和反码表示的数都有+0和-0的区别,但是补码表示只有一种0(也就是说+0和-0表示无差别),所以补码表示的负数可以到达-2^n,而原码和反码表示的负数到达 -(2^n-1)
移码表示法:与补码的符号位相反,见下表
总结:正数的原码、反码和补码表示都是相同的,不同在于负数用原码,补码,反码表示会有区别
举例:
| 真值(d) | 真值(b) | 原码 | 反码 | 补码 | 移码 |
| -127 | - 01111111 | 1 1111111 | 1 0000000 | 1 0000001 | 0 0000001 |
| -1 | - 00000001 | 1 0000001 | 1 1111110 | 1 1111111 | 0 1111111 |
| 0 | 00000000 |
0 0000000 1 0000000 |
0 0000000 1 1111111 | 0 0000000 | 1 0000000 |
| +1 | + 00000001 | 0 0000001 | 0 0000001 | 0 0000001 | 1 0000001 |
| +127 | + 01111111 | 0 1111111 | 0 1111111 | 0 1111111 | 1 1111111 |
本文深入探讨了计算机中数的表示方法,包括原码、反码、补码和移码的概念及其转换规则。通过具体实例,展示了不同码制如何表示正数、负数和零,强调了补码在现代计算机系统中的应用优势。
529

被折叠的 条评论
为什么被折叠?



