如何将8位二进制补码扩展成16位二进制补码?
2个回答
展开全部
如果8位二进制补码的最高位(符号位)为0,那么扩展后的16位补码直接在最高位前面添加8个0即可;\x0d\x0a如果8位二进制补码的最高位(符号位)为1,那么扩展后的16位补码直接在最高位前面添加8个1即可;\x0d\x0a\x0d\x0a举例如下:\x0d\x0a-13\x0d\x0a8位原码:1000 1101\x0d\x0a8位补码:1111 0011 \x0d\x0a16位原码:1000 0000 0000 1101\x0d\x0a16位补码:1111 1111 1111 0011\x0d\x0a根据前面的知识,由于-13的最高位为1,所以直接在最高位前面添加8个1即可变为16位补码,即1111 1111 1111 0011(与前面由原码求补码的结果一致)。\x0d\x0a\x0d\x0a13\x0d\x0a8位原码:0000 1101\x0d\x0a8位补码:0000 1101\x0d\x0a16位原码:0000 0000 0000 1101\x0d\x0a16位补码:0000 0000 0000 1101\x0d\x0a根据前面的知识,由于13的最高位为0,所以直接在最高位前面添加8个0即可变为16位补码,即0000 0000 0000 1101(与前面由原码求补码的结果一致)。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询