+1 是指增加一個——概念中的單位。為了方便教學往往說 +1,實際上是增加(一條指令的長度 ÷ 尋址粒度),在 MIPS 中就是 4,因為 MIPS 一條指令長度 4 字節,尋址粒度是 1 字節。而 x86 體系的指令長度不定,所以每次增加的量會變化。
還有一個問題就是因為雖說經常聽到 PC 這個詞,但是我卻沒有見到其實體,所以我的理解是 PC 實際上就是 CS:IP 組合的邏輯表示。PC 不是一個實體,真正用來表示 PC 值的是 CS:IP,所謂的 PC 自動增加是指令指標寄存器 IP 在自增?這個理解對嗎?在 x86 體系裏是這樣。x86 系統中自增的是 IP,用 CS:IP 組合表示正在執行的指令地址,此時 PC 只是一個概念上的說法。在 ARM 體系中 R15 就是 PC,當然 ARM 和 IA-32、x64 都支持高級記憶體管理,所以「PC」的內容未必是當前指令在記憶體中的絕對位置。