---
# System prepended metadata

title: 2023q1 Homework5 (assessment)

---

# 2023q1 Homework5 (assessment)
contributed by < `hankTaro` >

## 想問老師的問題
:::warning
在 [第 6 週測驗題](https://hackmd.io/@sysprog/linux2023-quiz6#%E6%B8%AC%E9%A9%97-3) 中的將除法轉換為乘法運算的方法，如何在除數為非 $2^n$ 的狀況下求出商以?

我能理解先求出 $M = 2^N/d$ 的概念，但在再用其與被除數相成後再向右位移 N 位，但在求出 M 的過程不就使用到除法了嗎，在有些硬體不支援除法運算符時，這項方法還有辦法實施嗎? 

以及當除數沒有重複使用的狀況下，此方法是不是就顯得多此一舉?
:::

:::warning
在 [第 7 週課堂問答簡記](https://hackmd.io/@sysprog/SyOhklg-3) 中提及的"利用 bitwise operation 來去除除法運算"中的"找到除數"部分，當 `temp` 的上限遠大於 `19` 時，有高機率碰上 `a` 無法用整數型態表示，後許的許多方法都會因此受到阻礙，所以這方法是只適用於除數為 `10` 的狀況嗎? 還是可以運用其概念應用到相似問題上?
:::
> `10` 是特例，甚至你可以說，同時要取得商和餘數的案例，就是滿足人們以十進位來解析數值。 :notes: jserv


## 〈因為自動飲料機而延畢的那一年〉心得


## 教材閱讀

## 作業連結

## 其他筆記

### 其他筆記連結
