From f0b5d5bc1e01f302fb374a2dac85e529ee8c8e74 Mon Sep 17 00:00:00 2001 From: "18218461270@163.com" <18218461270@163.com> Date: Wed, 23 Jul 2025 21:12:13 +0800 Subject: [PATCH] update --- homework/chapter2/README.md | 2 +- labs/datalab/README.md | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/homework/chapter2/README.md b/homework/chapter2/README.md index 124ade3..9ba378c 100644 --- a/homework/chapter2/README.md +++ b/homework/chapter2/README.md @@ -6,7 +6,7 @@ ## 2.66 第一次操作,我们令 `x = x | (x >> 1)`,这样 $x$ 的最高位所在 `1` 连续段长度必然不小于 2。 -第二次操作,令 `x = x | (x >> 2)`,依次类推。通过 5 次操作即可实现提示中的转换。 +第 $k$ 次操作,令 `x = x | (x >> (1 << (k - 1)))`。通过 5 次操作即可实现提示中的转换。 ## 2.75 $x,y$ 是补码数,$x'=T2U_w(x),y'=T2U_w(y)$。 diff --git a/labs/datalab/README.md b/labs/datalab/README.md index d10b9ff..0f892cb 100644 --- a/labs/datalab/README.md +++ b/labs/datalab/README.md @@ -17,6 +17,4 @@ $Tmax$ 的位表示为 `011...11`。注意到 `x+1==~x` 当且仅当 $x=-1$ 或 “折半递归法”。 ## `howManyBits` -对于正数 $x$,所求为最大的 $b$ 使得 $x$ 的第 $b-2$ 位为 `1`,而对于负数 $x$,则是最大的 $b$ 使得 $x$ 的第 $b-2$ 位为 `0`。通过令 `x = x ^ (x >> 31)`,我们得以仅用考虑 $x$ 为正数的情况。 - -之后使用“折半递归法”。 \ No newline at end of file +对于正数 $x$,所求为最大的 $b$ 使得 $x$ 的第 $b-2$ 位为 `1`,而对于负数 $x$,则是最大的 $b$ 使得 $x$ 的第 $b-2$ 位为 `0`。令 `x = x ^ (x >> 31)`,我们得以仅用考虑 $x$ 为正数的情况。然后通过“折半递归法”解决。 \ No newline at end of file