固定寬度整數流程
位元運算:明確寬度、有號範圍及完整寬度位移
相同位元可能代表正的無號整數,也可能是負的有號整數。解讀暫存器、旗標或協定欄位前,先指定寬度及有號模式。
內容更新: · 維護者與修正回報
輸入先拒絕溢位,再對結果套遮罩
寬度 N 的無號輸入範圍是 0 至 2^N−1,有號則是 −2^(N−1) 至 2^(N−1)−1。八位元時,255 是合法無號輸入,-1 是合法有號輸入,兩者都可能形成 11111111;有號 255 或無號 -1 則拒絕,不默默繞回。
接受完整十進位、0x 十六進位、0b 二進位及 0o 八進位,可有正負號。前綴不會繞過有號範圍檢查;拒絕小數、指數寫法、底線及部分解析。每個運算元最多 140 字元,BigInt 避免超過 JavaScript Number 安全整數範圍後失去精度。
區分邏輯位移與算術位移
左移把低位補零、丟棄超出結果遮罩的高位;邏輯右移把高位補零;算術右移重複原本最高位,即使選擇無號輸入,也把位元模式解讀為二補數。
八位元的 128 邏輯右移一位是 64;相同 10000000 位元算術右移一位則成 11000000,無號解讀為 192、有號為 -64。本工具接受零至完整寬度的位移量。完整寬度的左移或邏輯右移得到零,算術右移則是零或全 1 符號填滿,不採 JavaScript Number 的 modulo-32 位移量規則。
循環位元並保留精度
循環位移把移出的位元放回另一側,位移量以寬度取餘數。八位元 10000001 向左循環一位變成 00000011,循環八位則保持原模式。本工具只提供 0…N 位移量,方便明確檢查。
輸出同時顯示有號及無號十進位、補齊 Hex、完整位元與明確寬度遮罩。64 或 128 位元的對齊列可在區域內捲動,完整 JSON 匯出保留全部位元。這些固定寬度規則是本工具契約,移植至正式程式前請比對目標語言或 CPU;不模擬 C 的未定義行為或所有硬體指令。
資料可信度