黑马程序员技术交流社区
标题:
关于原码反码补码问题 ,很是疑惑
[打印本页]
作者:
smilejoke
时间:
2015-8-22 09:21
标题:
关于原码反码补码问题 ,很是疑惑
#include <stdio.h>
int main(int argc, const char * argv[]) {
// insert code here...
short a=1000000000000000;
short b=a-1;
short c=1000000000000000+0000000000000001;
printf("%hd\n",a);
printf("%hd\n",b);
printf("%hd\n",c);
return 0;
}-32768
32767
-32767
疑惑如下:
1:short a=1000000000000000这是源码还是补码?
2:运算的时候是源码运算还是补码运算?
3:输出的时候。是输出的源码对吗?
作者:
你是我的小苹果
时间:
2015-8-22 10:51
1.计算机是用补码来存储数据的,a肯定是补码,如果a是源码的话那应该是0啊。
2.既然计算机用补码存储数据,那运算的时候肯定是补码了。
3.输出的是十进制数啊,-32768, 32767, -32767这不明显是十进制数嘛。
不懂的可以再问
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2