拿8位二进制数来说当定义char x;时,这是有符号数,可以存储的是-128~+127之间的数当定义unsigned char x;时,这是无符号数,可以存放0~255之间的数同样的数,比如0x01,当成无符号数解释时是1,当成有符号数时也是1,这是其绝对值小于127时的情况;如果是0x81=129,当成无符号数读取和运算是被当成129,但被当成有符号数时就成了-127了,原因是最高位非0时,有符号数把它用于表示正负号而不当成有效数据位了。
好