text: RISC-V特權指令集架構規定了機器態程式計數暫存器，它是一個機器字長位的可讀寫暫存器。它主要用於在中斷髮生時臨時儲存產生中斷的指令地址，以便在中斷、異常結束後返回此條指令。地址對齊.機器態程式計數暫存器的最低位始終為零，即mepc=0。在僅支援指令對齊為32位的實現中，最低位和次低位始終為零，即mepc[1:0]=0。如果實現允許指令對齊為16或32位，則每當指令對齊為32位時，位mepc在讀取時被遮蔽，使其看起來為0。這種遮蔽也發生在MRET指令的隱式讀取。雖然被遮蔽，但當指令對齊為32位時，mepc仍然可寫。可儲存的地址.此暫存器是一個寫任意、讀合法暫存器，它必須能夠儲存所有有效的虛擬地址。它不需要能夠儲存所有可能的無效地址。在向此暫存器寫入值之前，實現可能會將無效地址轉換為此暫存器能夠儲存的其它一些無效地址。當地址翻譯無效時，虛擬地址和物理地址是相等的。因此，機器態程式計數暫存器能夠表示的值，必須包括程式計數器能夠指向的所有物理地址。陷入.當處理器陷入機器模式時，機器態程式計數暫存器被寫入被中斷或遇到異常的指令的虛擬地址。否則，此暫存器永遠不會由硬體實現寫入，儘管它可能由軟體顯式寫入。
metadata.dataset: erhwenkuo/wikipedia-zhtw
metadata.title: 機器態程式計數暫存器
metadata.url: https://zh.wikipedia.org/wiki?curid=7954389