C语言中的原、反、补码
展开全部
展开全部
int,
字长为2
字节共16位二进制数,
数的范围是-32768~32767
-32768的二进制是11111111
11111111负数最高位为1.
32767的二进制是01111111
11111111
正数最高位为0.
正数的原码和补码一样。
负数的补码是原码取反加1.
则
32768=01111111
11111111+1
=10000000
00000000
-32768=10000000
00000000
取反011111111
11111111
+1
10000000
00000000
结果和你书上看到的一样,说明书是对的,哈哈。
字长为2
字节共16位二进制数,
数的范围是-32768~32767
-32768的二进制是11111111
11111111负数最高位为1.
32767的二进制是01111111
11111111
正数最高位为0.
正数的原码和补码一样。
负数的补码是原码取反加1.
则
32768=01111111
11111111+1
=10000000
00000000
-32768=10000000
00000000
取反011111111
11111111
+1
10000000
00000000
结果和你书上看到的一样,说明书是对的,哈哈。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询