在 Mac 上把二進位轉成文字的最快方式,就是在 Safari 或 Chrome 開啟 Binary To Text 工具,把你的 0 與 1 貼上去,立刻讀取解碼後的字元 — 不需要 Terminal 指令、不需要安裝任何東西,而且所有資料都不會離開你的電腦。macOS 本身並沒有內建圖形化的二進位轉文字解碼器,系統 Terminal 必須輸入像 perl 或 python3 -c 這類的 shell 指令才能完成轉換。對於大多數只是想將一串 0 與 1 還原成可讀文字的使用者來說,瀏覽器工具是 Mac 上最輕鬆的選項。Binary To Text 頁面完全以用戶端 JavaScript 運作,因此轉換是在你的瀏覽器分頁中本地進行,而非在遠端伺服器上,而且此工具支援從基本 ASCII 字母到帶有腔調字元、emoji 等所有 Unicode 碼位。同樣的工作流程可用於解碼作業練習、CTF 謎題、紙本筆記,或任何現代 Mac 上的除錯記錄,無需額外軟體。

為何瀏覽器工具勝過 Mac 的內建選項
macOS 在很多方面都很出色,但開箱即用的二進位轉文字並不在其中。沒有系統設定面板能做這件事、沒有 TextEdit 捷徑、Preview 也沒有任何功能能把 0 與 1 變成可讀字元。兩條實際可走的原生路徑,對臨時使用來說都不太方便:
- 使用 perl 或 python3 的 Terminal — 開啟 Terminal.app,執行像 python3 -c "print(bytes(int(b, 2) for b in '01001000 01101001'.split()), 'utf-8')" 這種一行指令。它能運作,但你必須記住咒語、正確處理引號跳脫,並理解位元組界線。
- 捷徑或 Automator — 建立一個呼叫 shell 腳本的圖形化動作,但設定過程比轉換本身更費工,而且結果本質上仍依賴同一支腳本。
瀏覽器工具則翻轉了這個局面。你只要開啟一個分頁,貼上,然後讀取結果。Safari、Chrome、Firefox 和 macOS 上的 Arc 都搭載 JavaScript 引擎,因此 Binary To Text 轉換器在任何近幾年更新過的 Mac 上都能以相同方式運作,包括 Apple Silicon 與 Intel 機種。不需要 Homebrew 安裝、不需要 brew install 相依套件,也不需要熟悉命令列。
如何在 Mac 瀏覽器中將二進位轉成文字
- 在你的 Mac 上開啟 Safari 或 Chrome,並前往 Binary To Text 轉換器。
- 使用頁面頂端的切換鈕選擇 Binary → Text 作為轉換方向。
- 把你的 0 與 1 字串貼到輸入框中。此工具會忽略空格、Tab 與換行,因此你可以貼上像 0100100001101001 這種緊密排列的二進位,或像 01001000 01101001 這種以空格分組的形式,結果都會相同。
- 在輸出區讀取解碼後的文字,該輸出會在輸入解析完成的瞬間顯示。以上述範例而言,輸出為 Hi。
- 按一下 Copy 把結果放到剪貼簿,或按一下 Swap direction 把解碼後的文字重新送回編碼器,以便快速進行來回驗證。
如果你貼上的二進位不是 8 的倍數位元,工具會顯示清楚的錯誤訊息,而非產生亂碼輸出。這項防護機制在 macOS 上尤其重要,因為像 Paste 或 Keyboard Maestro 這類剪貼簿管理工具可能會悄悄插入不可見字元。將錯誤訊息視為唯一可信依據,會比盲目猜測問題來得更快。
在 Mac 上將文字編碼為二進位
反向轉換是許多學生與開發者最先會用到的方向。同一個 Binary To Text 工具透過單一切換鈕就能處理雙向轉換,因此你不需要第二個網站或第二個書籤。若要手動做個小範例,字母 c 的 UTF-8 位元組是 99,也就是 01100011。字母 a 是位元組 97,即 01100001。字母 t 是位元組 116,即 01110100。以單一空格連接起來,cat 的二進位表示就是 01100011 01100001 01110100 — 24 個位元,剛好三個位元組。把這段丟回解碼器,你應該會再次看到 cat,這證明了來回轉換是無損的。
- 把切換鈕切到 Text → Binary。
- 在輸入框中輸入或貼上任何文字 — 字母、數字、標點符號、腔調字元或 emoji 皆可。
- 讀取下方的 8 位元二進位輸出,每個位元組以單一空格分隔以方便閱讀。
- 使用 Copy 按鈕複製二進位,或按一下 Swap direction 將二進位送進解碼器,確認來回轉換是無損的。
因為每個字元會展開成固定的位元數,你無需實際執行就能預估輸出長度:每個 ASCII 字元是 8 位元、每個帶腔調的拉丁字元是 16 位元、每個 CJK 字元是 24 位元,每個輔助平面的 emoji 是 32 位元。因此,一段 100 字元的全 ASCII 英文句子就是 800 位元,或 100 個以空格分隔的位元組。
macOS 上的 UTF-8、Emoji 與非英文文字
此轉換器能正確處理腔調字元與 emoji,原因在於它從頭到尾都使用 UTF-8,這也是 macOS 在檔案、Mail 訊息、Safari 網頁與 Terminal 輸出所使用的編碼。純 ASCII 字元仍對應到單一位元組,所以大寫字母 A 仍然是 01000001,與數十年前一致。任何超出此範圍的字元則會佔用更多位元組。
舉例來說,小寫字母 é (帶銳音的 e) 的碼位為 U+00E9,UTF-8 將其編碼為兩個位元組序列 11000011 10101001。中文招呼語 你好 總共會變成六個位元組,而咖啡 emoji ☕ (U+2615) 會變成三個位元組:11100010 10011000 10010101。因為每個 Unicode 字元在顯示前都是從其位元組還原而成,所以 文字 → 二進位 → 文字 的過程永遠會精確還原原本的字串。即使同一行混用多種文字,也不會出現亂碼損毀。
在這一點上,瀏覽器工具確實勝過舊式的 perl 一行指令,後者歷來預設使用 Latin-1,除非你記得在 open 呼叫中加入 :encoding('UTF-8')。在 macOS 上,Terminal 的預設語系環境是 UTF-8,但腳本本身仍然可能在你的輸入經過其他命令管線處理時,悄悄重新編碼,這就是為什麼自成一格的瀏覽器頁面往往能產生更可靠的輸出。
常用位元組的快速 ASCII 對照
學習階段,記住幾個典型的位元組會比每次都查表更快。下表涵蓋大多數 Mac 使用者在一般句子中會輸入的字元。這些是正式的 ASCII 值,而非推算出的數字,因此不同工具之間數值不會改變。
| 字元 | ASCII 碼 | 8 位元二進位 |
|---|---|---|
| A | 65 | 01000001 |
| Z | 90 | 01011010 |
| a | 97 | 01100001 |
| z | 122 | 01111010 |
| 0 | 48 | 00110000 |
| 9 | 57 | 00111001 |
| 空格 | 32 | 00100000 |
| ! | 33 | 00100001 |
若需要更完整的可列印 ASCII 對照表,涵蓋數字、標點符號及字母的其餘部分,請參閱 Binary To Text ASCII 速查表。
macOS 上的隱私與離線使用
由於此轉換器是純 JavaScript,你的每一個位元組文字都是在瀏覽器分頁內部處理。不會上傳、記錄或傳送到任何伺服器,這一點在共用 Mac、實驗室電腦,以及剪貼簿內容可能被 IT 工具檢查的公司筆電上尤其重要。這個頁面在你第一次載入後仍能持續運作,即使你的 Mac 失去網路連線也一樣 — 在飛機上或 Wi-Fi 不穩的咖啡廳裡非常實用。
兩個針對 Mac 的實用小技巧可以讓工作流更順暢。首先,如果你想讓這個工具隨手可得,可以從 Safari 的網址列把頁面拖到 Dock,或在 Chrome 中使用 檔案 → 加入書籤列。其次,若你需要解碼一段不方便直接複製貼上的長字串,可以使用 macOS 的 Terminal 透過 cat input.bin | xxd -b 來輸出檔案內容,然後再貼到輸入框中 — 轉換本身仍然在瀏覽器中執行,因此你的檔案內容永遠不會離開自己的電腦。
延伸閱讀: 無需安裝任何 App 在 iPhone 上進行文字隱寫術。