十六進位計算機的功能
這款十六進位計算機可直接針對 16 進位(base-16)數值進行運算。不需要先手動換成十進位、算完再換回來,您只要輸入兩個十六進位數值、選擇運算方式,就能立即得到 16 進位的結果。它支援加、減、乘、除四則運算,無論是程式設計師、嵌入式工程師,或是需要處理記憶體位址、色碼、位元組資料的人,都能輕鬆上手。
輸入欄位說明
- 十六進位數值 1:您的第一個 16 進位數字(可使用 0–9 與字母 A–F)。
- 運算方式:選擇加、減、乘或除。
- 十六進位數值 2:您的第二個 16 進位數字。
運算原理
在計算的過程中,系統會先把兩組十六進位字串解析為整數(從 16 進位轉成 10 進位),套用您選擇的運算後,再把結果轉回大寫的 16 進位表示。以公式來看:
- 加:Result_{16} = Hex_1 + Hex_2
- 減:Result_{16} = Hex_1 - Hex_2
- 乘:Result_{16} = Hex_1 × Hex_2
- 除:Result_{16} = ≤ft\lfloor ((Hex_1) ÷ (Hex_2)) \right\rfloor(整數除法,餘數會被捨去)
由於採用大整數(big-integer)運算,即使是非常大的十六進位數值也能處理而不會溢位。若除數為零(十六進位數值 2 = 0),計算機會回傳「錯誤」,因為除以零在數學上沒有定義。
實際範例
假設您輸入十六進位數值 1 = 1A,選擇乘,再輸入十六進位數值 2 = F。
- 1A 換成十進位 = 26
- F 換成十進位 = 15
- 26 × 15 = 390
- 390 換回十六進位 = 186
因此 1A × F 的十六進位結果為 186。計算機會同時顯示 16 進位結果與背後的十進位數值,方便您核對。
十六進制、十進制和二進制轉換表
十六進制是基數為16的計數系統:它使用十個數字0–9加上六個字母A–F來表示十到十五的值。因為16 = 2^4,每個十六進制數字恰好對應四個二進制位(一個半字節),這就是為什麼十六進制是全球計算中二進制數據的標準簡記法。
| 十六進制 | 十進制 | 二進制 (4位) |
|---|---|---|
| 0 | 0 | 0000 |
| 1 | 1 | 0001 |
| 2 | 2 | 0010 |
| 3 | 3 | 0011 |
| 4 | 4 | 0100 |
| 5 | 5 | 0101 |
| 6 | 6 | 0110 |
| 7 | 7 | 0111 |
| 8 | 8 | 1000 |
| 9 | 9 | 1001 |
| A | 10 | 1010 |
| B | 11 | 1011 |
| C | 12 | 1100 |
| D | 13 | 1101 |
| E | 14 | 1110 |
| F | 15 | 1111 |
位置值從右到左增長16倍,正如十進制位置值增長10倍:
| 位置(從右開始) | 冪 | 十進制值 |
|---|---|---|
| 第1位 | 16^0 | 1 |
| 第2位 | 16^1 | 16 |
| 第3位 | 16^2 | 256 |
| 第4位 | 16^3 | 4096 |
| 第5位 | 16^4 | 65536 |
所以四位十六進制數被讀作
以下地標值在編程、內存映射和文件格式中經常出現:
| 十六進制 | 十進制 | 二進制 | 含義 |
|---|---|---|---|
| 0xFF | 255 | 11111111 | 最大8位(1字節)無符號值 |
| 0x100 | 256 | 1 0000 0000 | 比一個完整字節多一;28 |
| 0x3E8 | 1000 | 11 1110 1000 | 十進制一千 |
| 0xFFFF | 65535 | 十六個1s | 最大16位(2字節)無符號值 |
| 0x10000 | 65536 | 1後跟十六個0s | 216;一個64 KiB塊 |
| 0xFFFFFFFF | 4294967295 | 三十二個1s | 最大32位(4字節)無符號值 |
注意這個模式:n個F的十六進制數字等於16^n - 1,每個添加的十六進制數字將範圍乘以16(增加4位)。
如何手工進行十六進制運算
每個十六進制操作遵循相同的框架:檢查數字,在您可以處理的基數中工作,然後將答案呈現回基數16。以下步驟與計算器內部所做的相匹配。
- 驗證數字。每個字符必須是0–9或A–F(大小寫無關;a = A = 10)。任何其他字符——G、中間的空格、流浪逗號——都會使該值無效。前導
0x前綴或後綴h只是符號,在計算前被刪除。 - 將每個數字乘以其16的冪以獲得可以推理的十進制值。例如:
2F_{16} = 2 × 16 + 15 = 32 + 15 = 47_{10}
1A7_{16} = 1 × 256 + 10 × 16 + 7 = 256 + 160 + 7 = 423_{10} - 從右到左逐列加減。如果您願意,可以直接用十六進制計算:當列總和達到16或更大時,寫下總和減16,並向下一列進位1;減法時,如果上面的數字較小,從左邊的下一列借位——該借位值為16,而不是10。
- 對於乘法和除法,轉換為十進制、計算,然後轉換回去。十六進制中的長乘法需要一個16×16乘法表,因此手工轉換更快且不易出錯。此計算器執行整數(截斷)除法:商向零截斷,餘數被丟棄,除以0_{16}是未定義的。
- 通過重複除以16將十進制答案轉換回十六進制,從下往上讀餘數。對於390:
390 ÷ 16 = 24餘6
24 ÷ 16 = 1餘8
1 ÷ 16 = 0餘1
從下往上讀餘數得到186_{16}。檢查:1 × 256 + 8 × 16 + 6 = 390。10–15的餘數寫為A–F。
已解決的例子:加法
計算2F_{16} + 1A7_{16}。
- 最右邊的列:F + 7 = 15 + 7 = 22。由於22 ≥ 16,寫22 - 16 = 6並進位1。
- 中間列:2 + A + 1_{進位} = 2 + 10 + 1 = 13 = D,無進位。
- 左列:只有1保留,所以它直接向下。
結果是1D616。十進制檢查:47 + 423 = 470,1 × 256 + 13 × 16 + 6 = 256 + 208 + 6 = 470。✓
已解決的例子:帶借位的減法
計算200_{16} - 1A_{16}。十進制為512 - 26 = 486。逐位:0 - A需要借位,由於相鄰數字也是0,借位從前導2級聯,給出列1, F, 16-10=6 → 1E6_{16}。檢查:256 + 14 × 16 + 6 = 256 + 224 + 6 = 486。✓
已解決的例子:截斷除法
計算FF_{16} ÷ 10_{16}。轉換:255 ÷ 16 = 15.9375。整數除法截斷為15,15_{10} = F_{16},所以答案是F16——15的餘數被丟棄。一個有用的快捷方式:除以10_{16}只是刪除最後一個十六進制數字,就像除以10在十進制中刪除最後一個數字一樣。
已解決的例子:乘法
計算2F_{16} × 10_{16}。十進制中,47 × 16 = 752。轉換回去:752 ÷ 16 = 47 r 0;47 ÷ 16 = 2 r 15 = F;2 ÷ 16 = 0 r 2 → 2F0_{16}。乘以10_{16}追加一個零位,正如乘以10在十進制中所做的那樣。
關鍵十六進制術語定義
| 術語 | 定義 |
|---|---|
| 十六進制 (hex) | 基數為16的計數系統,使用十六個符號0–9和A–F。每個位置的價值是其右邊位置的16倍。 |
| 基數 / 進位制 | 系統使用的不同數字的個數。十進制的進位制為10,二進制的進位制為2,十六進制的進位制為16。像1D6_{16}這樣的下標明確表示進位制。 |
| 十六進制數字 | 十六進制數的一個符號,代表0到15的值。A、B、C、D、E、F分別代表10、11、12、13、14、15。 |
| 半字節 | 四位——正好一個十六進制數字,有16個可能的值(0–F)。 |
| 字節 | 八位——正好兩個十六進制數字,涵蓋0x00到0xFF(0到255無符號)。 |
| 字 | 給定處理器或格式的自然數據單位。其大小因架構而異:通常為16位(4個十六進制數字),但在其他地方為32或64位。始終檢查給定的文檔或CPU手冊使用哪個定義。 |
| 0x 前綴 | C語言風格的十六進制字面量標記,如0x1F。它只是符號,不增加值。 |
| 後綴 h | 彙編語言慣例,用於表示相同的東西,如1Fh。其他慣例包括$1F、#1F和16#1F#。 |
| 最高有效位 (MSD) | 最左邊的數字——承載最大位置值的數字,因此是改變數字最多的數字。 |
| 最低有效位 (LSD) | 最右邊的數字,價值16^0 = 1。 |
| 進位 | 在加法中,當列總和達到16或更大時,傳遞到左邊下一列的1。 |
| 借位 | 在減法中,當上面的數字太小時,從左邊的下一列取走的單位。在十六進制中,借位值為16。 |
| 整數(向下取整)除法 | 除法,產生移除分數部分的整數商。對於非負操作數,向零截斷和向下取整給出相同的答案;此計算器向零截斷。 |
| 餘數 / 取模 | 整數除法後剩下的:a - b × (a ÷ b)。對於FF ÷ 10,餘數是F(15)。此計算器丟棄它。 |
| 溢出 | 當結果對於使用中的存儲寬度太大時發生——例如,在固定寬度的硬件運算中,向32位0xFFFFFFFF加1會環繞到0x00000000。 |
| 大整數運算 | 對任意長度數字的軟件運算,受內存限制而不是固定的32位或64位寄存器。它避免了溢出,這就是為什麼計算器可以處理遠長於CPU字長的十六進制值。 |
| 無符號表示 | 每個位模式都是非負值的編碼:8位字節的範圍是0x00–0xFF,即0到255。 |
| 有符號表示 | 保留範圍的一部分用於負值的編碼。相同的8位模式跨越−128到+127,所以0xFF表示−1而不是255。十六進制字符串是否有符號完全取決於周圍程序如何解釋它。 |
| 二的補數 | 編碼有符號整數的幾乎普遍方式:通過反轉所有位並添加1來否定值。在8位中,-1是0xFF,-128是0x80。它允許一個加法器電路處理加法和減法。 |
| 內存地址 | 內存中的一個位置,按慣例用十六進制書寫(例如0x7FFF0000),因為十六進制清晰地映射到地址位和頁面邊界。 |
| #RRGGBB 顏色代碼 | 網絡/CSS記號,其中三對十六進制數字給出紅、綠、藍通道,每個0x00–0xFF。#FF0000是純紅色;#FFFFFF是白色;#000000是黑色。 |
使用這些術語與任何十六進制計算器時的兩個實際注意事項:此處的結果被視為純數學整數,而不是固定寬度的機器值,因此不會發生環繞溢出;除法只返回截斷商,所以如果您也需要餘數,您必須單獨計算。
相關計算機
使用注意事項與精準校對原則(6 大核心守則)
📐 1. 嚴格對齊輸入量綱與單位
輸入各項數值時請務必確認量綱(例如小時、天數、金額、百分比),避免單位不匹配引發推算偏差。
🔒 2. 純前端本機毫秒級隱私保障
所有計算邏輯 100% 在您的終端瀏覽器內完成,資料絕不上傳伺服器,嚴格守護商業與個人隱私。
📊 3. 符合公認學術與產業計算模型
演算法嚴格遵循國際通用數學公式與標準計算模型,經多重情境交叉核對,數值嚴密精確。
📋 4. 一鍵複製與免登入 PDF 匯出
支援一鍵複製推算結果字串至剪貼簿,亦可直接點擊列印按鈕輸出純淨 PDF 工作報表。
🔄 5. 多情景敏感度動態對比
建議針對極端值與多組預期情景分別試算,觀察輸出數據的波動區間,輔助做出更穩健的決策。
🛡️ 6. 專業諮詢與日常參考免責聲明
本工具運算結果供日常排程、學業研習與事前參考之用,如涉及重大法規或投資決策請諮詢持證專家。