练习二 2.1 用计算机处理信息时为什么需要对信息进行数字化编码? 答: 现代计算机采用二进制形式表示数据和指令,计算机内部处理的所有数据都是经过数字化编码的二进制数据,数值、文字、图形等信息只有编码成二进制形式才能由计算机进行处理。 2.2 编码数值型数据时需考虑哪三个方面的问题? 答: 1. 编码的长度 2. 正负号的编码 3. 小数点的编码 2.3 求码长1 个字节的原码、反码和补码形式的定点整数分别能编码整数的范围与个数。 答: 原码:1111 1111 - 0111 1111 -127~127 共 255 数 反码:1000 0000 – 0111 1111 -127~127 共 255 数 补码: 1000 0000 – 0111 1111 -128~127 共 256 数 2.4 求下列数的补码(码长1 个字节)。 65 -1 123 -123 -128 答: 65: 0100 0001 -1:原码1000 0001 反码1111 1110 补码1111 1111 123: 0111 1011 -123:原码1111 1011 反码1000 0100 补码1000 0101 -128:原码不能用1字节表示反码同样补码1000 0000 2.5 从负数的反码加1 得补码的过程说明补码的符号位可以看作是特殊的数值位的理由。(提示:以码长1 个字节为例,用127 减去负数原码的数值位就得到了负数的反码) 答: 以 -123 为例 原码1111 1011 反码1000 0100 补码1000 0101 0111 1111 127 -1111 1011 -123 1000 0100 4 +1=5 1000 0101:-128+5=-123 2.6 求码长分别为2 个和4 个字节时第4 题中几个数的补码,并分析码长变化时补码是如何变化的。 65 -1 123 -123 -128 答: 65: 0000 0000 0100 0001 -1:原码1000 0000 0000 0001 反码1111 1111 1111 1110 补码1111 1111 1111 1111 123: 0000 0000 0111 1011 -123:原码1000 0000 0111 1011 反码1111 1111 1000 0100 补码1111 1111 1000 0101 -128:原码1000 0000 1000 0000 反码1111 1111 0111 1111 补码1111 1111 1000 0000 65: 0000 0000 0000 0000 0000 0000 0100 0001 -1:原码1000 0000 0000 0000 0000 0000 0000 0001 反码1111 1111 1111 1111 1111 1111 1111 1110 补码1111 1111 1111 1111 1111 1111 1111 1111 123: 0000 0000 0000 0000 0000 0000 0111 1011 -123:原码1000 0000 0000 0000 0000 0000 0111 1011 反码1111 1111 1111 1111 1111 1111 1000 0...