负数的二进制表示
2011-09-08 09:23
633 查看
负数的二进制表示
对于整数来说,十进制和二进制的转化很简单,直接转化即可。
对于负数要增加两步。
例如 int i=-5,在机器内表示方法:
第一步:首先要把5变成101的二进制形式
第二步:再者就是按位取反,1111 1111 1111 1111 1111 1111 1111 1010
第三步:在最后加1 形成:1111 1111 1111 1111 1111 1111 1111 1011
反过来如果把最高位是1的二进制变成负的整形时
第一步:位取反,变成0000 0000 0000 0000 0000 0000 0000 0100
第二步:在最低位加上1,形成101
第三步:形成整形5 ,在加上负号
对于整数来说,十进制和二进制的转化很简单,直接转化即可。
对于负数要增加两步。
例如 int i=-5,在机器内表示方法:
第一步:首先要把5变成101的二进制形式
第二步:再者就是按位取反,1111 1111 1111 1111 1111 1111 1111 1010
第三步:在最后加1 形成:1111 1111 1111 1111 1111 1111 1111 1011
反过来如果把最高位是1的二进制变成负的整形时
第一步:位取反,变成0000 0000 0000 0000 0000 0000 0000 0100
第二步:在最低位加上1,形成101
第三步:形成整形5 ,在加上负号