Excel BITLSHIFT 函數:數值位元左移運算 (Bitwise Left Shift) 完整指南

Excel BITLSHIFT 函數:數值位元左移運算 (Bitwise Left Shift) 完整指南

📅 發布日期:2026-09-07 🏷️ 分類:數值與數學 Excel 工作表函數
💡 函數速查卡
函數名稱 BITLSHIFT
所屬類別 工程函數 (Engineering)
傳回類型 十進位整數 (Decimal Integer)
常用頻率 ★★★☆☆

在 Excel 中,BITLSHIFT 函數用於將指定的十進位數值轉換為二進位後,將其所有位元向左移動(Left Shift)指定位數,右側補零,最後再轉回十進位數值。向左移動 1 位元相當於將數值乘以 2 的 1 次方(N × 2^shift)。此函數廣泛應用於硬體暫存器資料封包組合、通訊協定遮罩建構、快速 2 的冪次運算與低階資料結構處理解碼等領域。

一、 基本語法與參數

BITLSHIFT 函數的標準語法結構如下:

=BITLSHIFT(number, shift_amount)
參數 說明 預設值 / 必填
number 要進行左移運算的十進位整數,必須為大於或等於 0 的整數。 必填
shift_amount 要向左移動的位元數。若傳入負數,Excel 會自動改為執行向右移動(Right Shift)操作。 必填

二、 核心功能與邏輯原理說明

BITLSHIFT 運算時,會將數值轉為二進位後向左補零推進。每一位的左移都代表將原數值乘以 2。

例如:計算 BITLSHIFT(5, 2)

  • 十進位 5 轉為二進位為:101
  • 101 向左移動 2 位,右側補兩個零,變為:10100
  • 將二進位 10100 轉回十進位為 20(即 5 × 2^2 = 20)。

三、 實用公式範例

範例 1:基本位元左移與快速乘法計算

演示位元左移之數學效應(乘以 2 的冪次):

' 二進位: 101 (5) 左移 2 位 -> 10100 (20)
=BITLSHIFT(5, 2) ' 結果傳回 20

' 二進位: 1 (1) 左移 8 位 -> 100000000 (256)
=BITLSHIFT(1, 8) ' 用於快速計算 2^8,結果傳回 256

範例 2:建立特定位置的位元遮罩 (Bitmask)

在系統權限或硬體控制中,常需動態建立第 N 個 Bit 的權限遮罩值(例如第 3 位,權限值為 2^(3-1) = 4):

' 若 A1 輸入 Bit 位置(如 3),產生該 Bit 的二進位遮罩值 (1 左移 2 位 = 4)
=BITLSHIFT(1, A1 - 1)

範例 3:組合多組欄位值為單一暫存器資料(搭配 BITOR)

若要將高位元資料(A1,範圍 0-15)與低位元資料(B1,範圍 0-15)合併為一個 8-Bit 的位元組:

' 將 A1 左移 4 位至高 4 位元,再與低 4 位元的 B1 進行 BITOR 組合
=BITOR(BITLSHIFT(A1, 4), B1)

四、 常見陷阱與注意事項

⚠️ 注意事項 1:結果上限 48 位元限制 (#NUM! 錯誤)
BITLSHIFT 運算後的最終結果不能超過 (2^48 - 1)(即 281,474,976,710,655)。若左移後超出此範圍、移位位數大於 53 或輸入負數 number,將傳回 #NUM! 錯誤。
⚠️ 注意事項 2:移動位數傳入負數會自動轉為右移
shift_amount 傳入負值時(例如 =BITLSHIFT(16, -2)),Excel 會將其視為向右移動 2 位(同 BITRSHIFT(16, 2)),結果傳回 4

五、 相關函數推薦

  • BITRSHIFT:將數值進行位元右移(Right Shift)運算。
  • BITAND:進行位元邏輯「與」(Bitwise AND)運算。
  • BITOR:進行位元邏輯「或」(Bitwise OR)運算。

六、 官方文件連結

想進一步瞭解微軟官方說明與更多邊界情境,可參考:

留言

相關文章 / 薪資情報

文章載入中...

你可能有興趣

精選文章 / 推薦情報

文章載入中...