1756-L61 1756-L61 1756-L61 1756-L61 1756-L61 1756-L61 1756-L61 1756-L61 1756-L61
為此可采取以下兩種辦法:
第一種辦法是在指令中包含了下一條指令的地址。在指令執(zhí)行過程中將這個(gè)地址送人指令地址寄存器即可達(dá)到程序持續(xù)運(yùn)行的目的。這個(gè)方法適用于早期以磁鼓、延遲線等串行裝置作為主存儲(chǔ)器的計(jì)算機(jī)。根據(jù)本條指令的執(zhí)行時(shí)間恰當(dāng)?shù)貨Q定下一條指令的地址就可以縮短讀取下一條指令的等待時(shí)間,從而收到提高程序運(yùn)行速度的效果。
第二種辦法是順序執(zhí)行指令。一個(gè)程序由若干個(gè)程序段組成,每個(gè)程序段的指令可以設(shè)計(jì)成順序地存放在存儲(chǔ)器之中,所以只要指令地址寄存器兼有計(jì)數(shù)功能,在執(zhí)行指令的過程中進(jìn)行計(jì)數(shù),自動(dòng)加一個(gè)增量,就可以形成下一條指令的地址,從而達(dá)到順序執(zhí)行指令的目的。這個(gè)辦法適用于以隨機(jī)存儲(chǔ)器作為主存儲(chǔ)器的計(jì)算機(jī)。當(dāng)程序的運(yùn)行需要從一個(gè)程序段轉(zhuǎn)向另一個(gè)程序段時(shí),可以利用轉(zhuǎn)移指令來實(shí)現(xiàn)。轉(zhuǎn)移指令中包含了即將轉(zhuǎn)去的程序段入口指令的地址。執(zhí)行轉(zhuǎn)移指令時(shí)將這個(gè)地址送人程序計(jì)數(shù)器(此時(shí)只作為指令地址寄存器,不計(jì)數(shù))作為下一條指令的地址,從而達(dá)到轉(zhuǎn)移程序段的目的。子程序的調(diào)用、中斷和陷阱的處理等都用類似的方法。在隨機(jī)存取存儲(chǔ)器普及以后,第二種辦法的整體運(yùn)行效果大大地優(yōu)于第一種辦法,因而順序執(zhí)行指令已經(jīng)成為主流計(jì)算機(jī)普遍采用的辦法,程序計(jì)數(shù)器就成為中央處理器不可或缺的一個(gè)控制部件。
CPU內(nèi)的每個(gè)功能部件都完成一定的特定功能。信息在各部件之間傳送及數(shù)據(jù)的流動(dòng)控制部件的實(shí)現(xiàn)。通常把許多數(shù)字部件之間傳送信息的通路稱為“數(shù)據(jù)通路”。信息從什么地方開始,中間經(jīng)過哪個(gè)寄存器或多路開關(guān),最后傳到哪個(gè)寄存器,都要加以控制。在各寄存器之間建立數(shù)據(jù)通路的任務(wù),是由稱為“操作控制器”的部件來完成的。