直接移位只能計算乘數(或除數)為2的n次方的乘(除)運算,對於壹般的乘除法,還要配合加(減)法運算,比如a?9=a?3+a
實際上二進制數的基本運算即加,取反,移位等,通過變換來計算減,乘,除。
可以驗證,用單片機C語言編程計算乘數為2的n次方的乘法運算比乘數為壹般數的乘法運算要快得多,就是因為前者只需直接移位,後者還需配合加法或經多步運算