計算機內存由成千上萬個雙態電子開關組成:開啟態為「1」,閉合態為「0」。每個開關稱作一個「位(bit)」,是二進制的基本單元。為有序存儲信息,通常將8個位組成一個「字節(byte)」,可存放一個字符(如字母「a」的ASCII碼)。所有字符均有對應的二進制編碼,主流系統採用ASCII(美國標準信息交換碼)建立映射關係。


內存由大量有序字節構成,每個字節擁有唯一地址(編號),CPU通過地址讀寫數據。單字節只能存字符,整數或實數需佔用多字節組成「字」(如短整數2字節、實數4字節),一個字可存一個數據或一條指令。
內存單元存放數據或指令,其地址為組成單元的首字節地址。例如短整型變量i、j、z各佔2字節,若i地址為5000,則佔用5000、5001;j緊隨其後地址為5002,z為5004。C/C++中用「&i」表示變量地址(指針)。

直接訪問:通過變量名找到地址,直接讀寫數值。
間接訪問:定義指針變量存放地址(如i_pointer=&i),先取指針值再訪問目標單元。指針變量值可變,故可指向不同變量實現動態訪問。

內存中最高位為符號位(0正、1負),其餘位為絕對值。正數三碼相同;負數則不同:




計算機內部統一使用補碼進行運算,可將減法轉為加法,簡化硬件邏輯電路設計。