关于 无符号数 跟 有符号负数 在内存中的区别
关于 无符号数 和 有符号负数 在内存中的区别?比如 无符号的255 和有符号的 -1在内存都是 1111 1111 表示
关于 无符号数 和 有符号负数 在内存中的区别?
比如 无符号的255 和有符号的 -1
在内存都是 1111 1111 表示吧
那计算机在读取这段内存的时候是根据什么来决定
要读成255 还是 -1 的呢
悲催的问题,狠简单的问题
可是真不懂啊
[解决办法]
比如 无符号的255 和有符号的 -1
在内存都是 1111 1111 表示吧
对
那计算机在读取这段内存的时候是根据什么来决定
要读成255 还是 -1 的呢
读成:1111 1111
悲催的问题,狠简单的问题
可是真不懂啊
内存就是内存, -1 和255 存在1字节里都是1111 1111, 问题是怎么解释它, 也就是char还是unsigned char的问题。
[解决办法]
根据指令来决定的
处理有符号和无符号数的指令是不一样的
[解决办法]
举个最简单的例子
C/C++ codesigned char a = -1;unsigned char b = (unsigned char)-1;int va = (int)a;int vb = (int)b;printf("va = %d, vb = %d\n",va,vb);
[解决办法]
[解决办法]
[解决办法]
根据程序指令来决定读取内存中的数据方式。
[解决办法]
在内存中没有什么区别,关键是你站在无符号数的角度,还是有符号数的角度去看问题。
同一个东西,你站在不同的角度,看到的东西就是不一样的。