專用寄存器組
發(fā)布時間:2014/6/3 21:08:57 訪問次數(shù):1074
專用寄存器組主要用來指示當前要執(zhí)行指令的內存地址、存放操作數(shù)和指示指令執(zhí)行后的狀態(tài)等。SN74LV123ADR它是任何一臺計算機的CPU不可缺少的組成部件,其寄存器的多少因機器型號的不同而異。專用寄存器組主要包括程序計數(shù)器PC、累加器A、程序狀態(tài)字PSW、堆棧指針SP、數(shù)據(jù)指針DPTR和通用寄存器B等。
(1)程序計數(shù)器PC(Program Counter)
程序計數(shù)器PC是一個二進制16位的程序地址寄存器,專門用來存放下一條將要執(zhí)行指令的內存地址,能自動加1。CPU執(zhí)行指令時,它是先根據(jù)PC中的地址從存儲器中取出當前需要執(zhí)行的指令碼,并把它送給控制器分析執(zhí)行,隨后PC中的地址碼自動加1,以
便為CPU取下一個需要執(zhí)行的指令碼做準備。當下一個1。這樣,PC -次次加1,指令就被一條條地執(zhí)行。所以,需要執(zhí)行的程序的機器碼必須在程序執(zhí)行前預先一條條地按順序存放到程序存儲器中,且將PC內存放的地址設置成該程序的第一條指令的內存地址。
8051程序計數(shù)器PC由16個觸發(fā)器構成,故它的編碼范圍為OOOOH~FFFFH。這就是說,8051對程序存儲器的尋址范圍為64KB。如果想為8051配置大于64KB的程序存儲器,就必須在制造8051器件時加長程序計數(shù)器的位數(shù)。但在實際應用中,64KB的程序存儲器通常已經(jīng)足夠了。
(2)累加器A(Accumulator)
累加器A又記作ACC,是一個具有特殊用途的二進制8位寄存器,專門用來存放操作數(shù)或運算結果。在CPU執(zhí)行某種運算前,兩個操作數(shù)中的一個通常應放在累加器A中,運算完成后在累加器A中便可得到運算結果。
(3)通用寄存器B(General-Purpose Register)
通用寄存器B是專門為乘法和除法設置的寄存器,也是一個二進制8位寄存器。該寄存器在乘法或除法前,用來存放乘數(shù)或除數(shù),在乘法或除法完成后用于存放乘積的高8位或除法的余數(shù)。
專用寄存器組主要用來指示當前要執(zhí)行指令的內存地址、存放操作數(shù)和指示指令執(zhí)行后的狀態(tài)等。SN74LV123ADR它是任何一臺計算機的CPU不可缺少的組成部件,其寄存器的多少因機器型號的不同而異。專用寄存器組主要包括程序計數(shù)器PC、累加器A、程序狀態(tài)字PSW、堆棧指針SP、數(shù)據(jù)指針DPTR和通用寄存器B等。
(1)程序計數(shù)器PC(Program Counter)
程序計數(shù)器PC是一個二進制16位的程序地址寄存器,專門用來存放下一條將要執(zhí)行指令的內存地址,能自動加1。CPU執(zhí)行指令時,它是先根據(jù)PC中的地址從存儲器中取出當前需要執(zhí)行的指令碼,并把它送給控制器分析執(zhí)行,隨后PC中的地址碼自動加1,以
便為CPU取下一個需要執(zhí)行的指令碼做準備。當下一個1。這樣,PC -次次加1,指令就被一條條地執(zhí)行。所以,需要執(zhí)行的程序的機器碼必須在程序執(zhí)行前預先一條條地按順序存放到程序存儲器中,且將PC內存放的地址設置成該程序的第一條指令的內存地址。
8051程序計數(shù)器PC由16個觸發(fā)器構成,故它的編碼范圍為OOOOH~FFFFH。這就是說,8051對程序存儲器的尋址范圍為64KB。如果想為8051配置大于64KB的程序存儲器,就必須在制造8051器件時加長程序計數(shù)器的位數(shù)。但在實際應用中,64KB的程序存儲器通常已經(jīng)足夠了。
(2)累加器A(Accumulator)
累加器A又記作ACC,是一個具有特殊用途的二進制8位寄存器,專門用來存放操作數(shù)或運算結果。在CPU執(zhí)行某種運算前,兩個操作數(shù)中的一個通常應放在累加器A中,運算完成后在累加器A中便可得到運算結果。
(3)通用寄存器B(General-Purpose Register)
通用寄存器B是專門為乘法和除法設置的寄存器,也是一個二進制8位寄存器。該寄存器在乘法或除法前,用來存放乘數(shù)或除數(shù),在乘法或除法完成后用于存放乘積的高8位或除法的余數(shù)。