n位二进制补码,当m
问题描述:
n位二进制补码,当m
答
variable x stand for what ?x表示,,没有舍弃的,原来的那个数,y表示舍弃咯n-m位的新数它是这个意思:比如0000 0000 0011 = 0011(同样为十进制的3) 同样地 1111 1010 = 1010 (同样是十进制的-6) 这个在编程中叫作符号位扩展现象, 在从低位类型(如byte类型 8位),转换为高位类型(如int类型 32位)时会出现, 而你提供的这句话意思就是反过来,从高位到低位,前提是舍去的部分都等于符号位, 说白了就是前面的数字都一样~!这么说明白了吗?额,就是要说明,,额,,也就是证明这个结论,口头说明的话还是可以的, 如果是正数, 比如0000 0000 0011 = 0011,符号位为0,在前面加多少0都一样, 如果是负数,也就是补码,取反加一一定是它的相反数,符号位原来是1,取反后变成0,前面有多少都一样,后面部分完全是一样的,丝毫不影响大小。 如果非要证明的话我就无能为力了,就像让哦证明十进制中 120 和00120是一样大的一样, 之所以我们平时不这么用,计算机这么用是因为计算机计数时是有位的限制的, 比如4位,那么2就是 0010 ,如果是8位 ,就是0000 0010。 希望还是可以给你做个参考吧,最多只能做到这样了~O(∩_∩)O~