《计算机科学导论》第四章课后作业解答(个人版)
复习题
1.算术运算和逻辑运算有什么区别?
算术运算是指对数字进行的运算,例如加、减、乘、除等。逻辑运算是指对布尔值(真/假)进行的运算,例如与、或、非等。
2.在二进制补码格式的整数相加中,最左边一列是怎样进位的?
在二进制补码格式的整数相加中,最左边一列的进位被忽略。这是因为补码表示中,最左边一位是符号位,用来表示整数的正负。如果最左边一列有进位,那么表示结果溢出。
3.n的位分配单元可以等于1吗?为什么?
n的位分配单元可以等于1。位分配单元是指计算机存储器中一次可寻址的最小单位,通常用位(bit)来表示。大多数现代计算机的位分配单元为8位,即1字节(byte)。但是,也有一些计算机系统的位分配单元为1位,这种情况下,n的位分配单元等于1。这种设计可以用于某些特殊应用,例如位图索引等。
4.解释"溢出"这个词。
溢出是指在计算机进行运算时,结果超出了能够表示的范围。例如,在8位补码表示中,最大能够表示的正整数是127(01111111),如果我们计算127 + 1,那么结果应该是128,但实际上会发生溢出,得到的结果是-128。
5.在浮点数的加法运算中,怎样调整指数不同的数的表示方法?
在浮点数的加法运算中,如果两个数的指数不同,则需要调整其中一个数的指数和尾数,使两个数的指数相同。具体方法是将指数较小的数的指数增加到与另一个数相同,并同时将其尾数右移相应的位数。
6.一元运算和二元运算有何不同?
一元运算是指只有一个操作数的运算,例如取反(NOT)等。二元运算是指有两个操作数的运算,例如加、减、乘、除、与(AND)、或(OR)等。
7.二元逻辑运算有哪些?
常见的二元逻辑运算有与(AND)、或(OR)、异或(XOR)等。
8.什么是真值表?
真值表是一种表格,用于显示逻辑表达式在所有可能输入值组合下的输出结果。
9.NOT运算符的作用是什么?
NOT运算符用于对布尔值取反。如果输入为真,则输出为假;如果输入为假,则输出为真。
10.AND运算符的结果何时为真?
AND运算符用于对两个布尔值进行逻辑与运算。当且仅当两个输入都为真时,输出才为真。
11.OR运算符的结果何时为真?
OR运算符用于对两个布尔值进行逻辑或运算。当两个输入中至少有一个为真时,输出才为真。
12.XOR运算符的结果何时为真?
XOR运算符用于对两个布尔值进行逻辑异或运算。当且仅当两个输入不同时,输出才为真。
13.说出 AND 运算符本章讨论的一个重要特性。
AND 运算符本章讨论的一个重要特性是它可以用来进行掩码操作。通过将一个整数与一个掩码进行AND运算,可以将整数中某些特定位置零。
14.说出 OR 运算符本章讨论的一个重要特性。
OR 运算符本章讨论的一个重要特性是它可以用来进行置位操作。通过将一个整数与一个掩码进行OR运算,可以将整数中某些特定位置一。
15.说出 XOR 运算符本章讨论的一个重要特性。
XOR 运算符本章讨论的一个重要特性是它可以用来进行翻转操作。通过将一个整数与一个掩码进行XOR运算,可以将整数中某些特定位取反。
16.何种二元运算可以用来置位?掩码应该用什么位模式?
OR 运算可以用来置位。掩码应该使用全零模式,并在需要置位的位置上设置为1。
17.何种二元运算可以用来复位?掩码应该用什么位模式?
AND 运算可以用来复位。掩码应该使用全一模式,并在需要复位的位置上设置为0。
18.何种二元运算可以用来反转?掩码应该用什么位模式?
XOR 运算可以用来反转。掩码应该使用全零模式,并在需要反转的位置上设置为1。
19.逻辑和算术移位间的区别是什么?
逻辑移位和算术移位的区别在于它们处理符号位的方式不同。逻辑移位将符号位视为普通位进行移位,而算术移位则保留符号位不变。