4294967295 二进制//1111 1111 1111 1111 1111 1111 1111 1111 == 2^31 +2^30+ 2^0?#includeint main(){short a=-1;printf("%u\n",a);//short类型为什么会表示4294967295 //明明超过俩个字节!}

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/14 11:23:11
4294967295 二进制//1111 1111 1111 1111 1111 1111 1111 1111 == 2^31 +2^30+ 2^0?#includeint main(){short a=-1;printf(
x)3144374UxO;Q64 3sJSR3Jr3443Jmu iJ1yJ:`w?dǮ'xg֋+/م<}g3Ŷ۟_dǪkjRI*ҧW <VI$#Z;akϧxpOxڴet ((" t>lc^k=dG` LO7l|6c=G6yv8GK

4294967295 二进制//1111 1111 1111 1111 1111 1111 1111 1111 == 2^31 +2^30+ 2^0?#includeint main(){short a=-1;printf("%u\n",a);//short类型为什么会表示4294967295 //明明超过俩个字节!}
4294967295 二进制//1111 1111 1111 1111 1111 1111 1111 1111 == 2^31 +2^30+ 2^0?
#include
int main()
{
short a=-1;
printf("%u\n",a);//short类型为什么会表示4294967295 //明明超过俩个字节!
}

4294967295 二进制//1111 1111 1111 1111 1111 1111 1111 1111 == 2^31 +2^30+ 2^0?#includeint main(){short a=-1;printf("%u\n",a);//short类型为什么会表示4294967295 //明明超过俩个字节!}
用补码存储的呢
-1 原码 1000 0000 0000 0000 0000 0000 0000 0001
按位求反1111 1111 1111 1111 1111 1111 1111 1110 //符号位不变
+1 1111 1111 1111 1111 1111 1111 1111 1111
所得就是补码