許多踏入 IT 領域的新手面臨技術棧選擇的困惑。本系列將聚焦於 Windows 平台下的 C 程式設計,透過由淺入深的方式,帶你建立扎實的底層思維。C 語言作為作業系統與嵌入式開發的基石,掌握它能讓你真正理解程式如何在硬體上運作。
電腦透過電壓高低代表二進位狀態。理解二進位、八進位、十六進位互轉是基礎。關鍵技巧:3 位二進位對應 1 位八進位,4 位二進位對應 1 位十六進位。
國王分珍珠的故事揭示了核心數學性質:2^0 + 2^1 + ... + 2^n = 2^(n+1) - 1。熟記 2^10 = 1024 等關鍵數值,能大幅加速心算與除錯效率。
1 Byte = 8 bits。32 位元系統下,位址總線寬 32 根,可定址 4GB 空間(2^32 Bytes)。每個位址對應一個 Byte,這是「一個位址對應一個位元組」的鐵律。
現代作業系統採用保護模式,每個程式擁有獨立的 4GB 邏輯位址空間(用戶空間 2GB + 核心空間 2GB),透過 MMU 映射到不連續的物理記憶體,實現進程隔離與安全防護。
為解決符號位參運算導致的錯誤,採用「原碼取反加一」得補碼。例如 -18 的 8 位元補碼為 1110 1110。這統一了加減法邏輯,CPU 只需加法器即可完成減法。
記憶口訣:「高高低低」——高位址存高位元組,低位址存低位元組。
sizeof 回傳型別佔用位元組數。32 位元環境下 int 佔 4 Bytes。有號整數範圍由符號位決定:[-2^(n-1), 2^(n-1)-1];無號整數範圍:[0, 2^n-1]。
本章建立了二進位、記憶體定址、資料表示、進程隔離四大支柱觀念。下一章將深入指標運算、動態記憶體管理與函數呼叫慣例,敬請期待。