一.欢迎来到我的酒馆
讨论c语言中,原码、反码、补码。
目录
- 一.欢迎来到我的酒馆
- 二.原码
二.原码
2.1在计算机中,所有数据都是以二进制存储的,但不是直接存储二进制数,而是存储二进制的补码。原码很好理解,就是对应的二进制。一个十进制转为二进制,得到的这个二进制即为原码。例如,2的二进制为:0000 0010,所以2的原码为: 0000 0010 。
#include <stdio.h>
int main() {
int A = 2;
printf("A = %d\n", A);
return 0;
}
输出:
A = 2
2.2 已知原码,求反码和补码。正数的反码和补码,与原码相同。计算机中并不直接存储负数,而是存储负数的补码。负数的原码,用最高位表示正负,0表示正数,1表示负数,如:-2,原码为:1000 0010(假设字长为8位)左边的最高位1表示这是负数。负数的反码,最高位不变,其余位数取反。负数的补码,在反码的基础上加1.