在计算机组成原理的学习中,理解数据表示方式是至关重要的。本题目涉及到了定点和浮点表示两种常见的数值表示方法,以及原码、反码和补码的概念。我们首先来分析这些知识点:
1. 定点表示:定点数是指小数点固定在某个位置的数值,分为整数和小数两种形式。在题目中,机器字长为16位,其中15位用于数值,1位为符号位。对于定点原码整数表示:
- 最大正数:由于最高位为0代表正数,所以是011...1(15个1),转换为十进制为(2^15 - 1) = 32767。
- 最小负数:最高位为1代表负数,所以是111...1(15个1),转换为十进制为-(2^15 - 1) = -32767。
2. 定点原码小数表示:
- 最大正数:最高位为0,小数点后有15个1,即0.11...1,转换为十进制为(1 - 2^(-15)) ≈ 0.9996。
- 最小负数:最高位为1,小数点后有15个1,即1.11...1,转换为十进制为-(1 - 2^(-15)) ≈ -0.9996。
3. 浮点表示:浮点数将数值分为阶码和尾数两部分,其中阶码指示数值的大小范围,尾数表示数值的精确度。题目中,阶码为6位,其中1位为阶符,尾数为10位,其中1位为数符,阶码底为2。
- 最大浮点数:阶符为0(正),阶码为11111(转换为二进制为31),尾数全1(1.111111111),表示为2^(31) * (1 - 2^(-9)) ≈ 2147483.648。
- 最小负浮点数:阶符为1(负),阶码为11111,尾数全1,表示为-2^(31) * (1 - 2^(-9)) ≈ -2147483.648。
- 绝对值最小的非零浮点数:不规格化形式,阶码为0,尾数为1000000001(正数为例),表示为2^(-31) * 2^(-9) = 2^(-40) ≈ 9.765625e-13。
4. 数值精度:有效数字位数是衡量数值可以区分的最小差异,对于浮点数,它通常由尾数的位数决定。在本例中,浮点数的尾数为9位二进制,因此可以区分的最小绝对值为2^(-9),约等于0.000000001,相当于3位8进制数的1/8192。
5. 原码一位乘法:这是一种简单的乘法算法,通过逐位相乘并累加部分积来完成。例如,计算X=0.1101和Y=-0.1011的积,需要进行一系列的逻辑操作,包括取绝对值、逐位相乘、判断进位等。这里没有给出完整的计算过程,但基本步骤是通过不断调整部分积寄存器中的值,直到所有位都被处理。
总结来说,此PPT课件涵盖了计算机中数据表示的基础知识,包括定点和浮点数的原码表示,以及浮点数的计算和精度分析。通过这些概念,学生可以深入理解计算机如何存储和处理数值,为后续的计算机系统设计和程序编写奠定基础。