版權(quán)歸原作者所有,如有侵權(quán),請(qǐng)聯(lián)系我們

[科普中國(guó)]-通用寄存器地址

科學(xué)百科
原創(chuàng)
科學(xué)百科為用戶提供權(quán)威科普內(nèi)容,打造知識(shí)科普陣地
收藏

定義

通用寄存器地址通常是指CPU用來(lái)查找通用寄存器在計(jì)算機(jī)所在的位置的地址。在不同計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中,地址空間的組織方式是不相同的,一般分為3種:3個(gè)地址空間的組織方式、2個(gè)地址空間的組織方式以及1個(gè)地址空間的組織方式,通用寄存器地址所對(duì)應(yīng)的編址也不同。例如1個(gè)地址空間的組織方式中,地址空間的地低端地址是CPU的通用寄存器地址。1

地址空間組織方式地址空間可以有以下3種組織方式。

(1)3個(gè)地址空間的組織方式

存儲(chǔ)空間的存儲(chǔ)單位數(shù)量越多,用于存儲(chǔ)單位編址的地址碼越長(zhǎng)。CPU中的通用寄存器數(shù)量越少,I/O/寄存器的數(shù)量稍多,主存儲(chǔ)單元的數(shù)量要大得多。為了減少指令中的地址碼長(zhǎng)度,對(duì)這3個(gè)地址空間獨(dú)立編址。這3個(gè)地址空間的尋址方式也不相同,對(duì)寄存器一般采用簡(jiǎn)單直接尋址方式,對(duì)主存空間一般采用間接尋址和變址尋址等多種尋址方式,以避免在指令中直接表示主存單元的地址碼。

(2)2個(gè)地址空間的組織方式

CPU的通用寄存器獨(dú)立編址,I/O接口寄存器和主存儲(chǔ)器統(tǒng)一編址。統(tǒng)一編址空間的高端地址一般用于I/O接口寄存器地址。

(3)1個(gè)地址空間的組織方式

所有數(shù)據(jù)存儲(chǔ)單位統(tǒng)一編址,地址空間的地低端地址是CPU的通用寄存器地址。高端地址是I/O接口寄存器地址。

編址單位

常用的編址單位有:字編址、字節(jié)編制和位編址。

字編址是指每個(gè)編址單位與訪問(wèn)的數(shù)據(jù)存儲(chǔ)單元一致。字節(jié)編址是指每個(gè)編址單位都是一個(gè)字節(jié),位節(jié)編址是指每個(gè)編址單位都是一個(gè)二進(jìn)制位。1

通用寄存器介紹

通用寄存器主要包括:數(shù)據(jù)寄存器、變址寄存器、指針寄存器、段寄存器、指令指針寄存器。通用寄存器可用于傳送和暫存數(shù)據(jù),也可參與算術(shù)邏輯運(yùn)算,并保存運(yùn)算結(jié)果。除此之外,它們還各自具有一些特殊功能。匯編語(yǔ)言程序員必須熟悉每個(gè)寄存器的一般用途和特殊用途,只有這樣,才能在程序中做到正確、合理地使用它們。

用途

通用寄存器數(shù)據(jù)寄存器AX乘、除運(yùn)算,字的輸入輸出,中間結(jié)果的緩存AL字節(jié)的乘、除運(yùn)算,字節(jié)的輸入輸出,十進(jìn)制算術(shù)運(yùn)算AH字節(jié)的乘、除運(yùn)算,存放中斷的功能號(hào)BX存儲(chǔ)器指針CX串操作、循環(huán)控制的計(jì)數(shù)器CL移位操作的計(jì)數(shù)器DX字的乘、除運(yùn)算,間接的輸入輸出變址寄存器SI存儲(chǔ)器指針、串指令中的源操作數(shù)指針DI存儲(chǔ)器指針、串指令中的目的操作數(shù)指針變址寄存器BP存儲(chǔ)器指針、存取堆棧的指針SP堆棧的棧頂指針指令指針I(yè)P/EIP標(biāo)志位寄存器Flag/EFlag32位CPU的段寄存器16位CPU的段寄存器ES附加段寄存器CS代碼段寄存器SS堆棧段寄存器DS數(shù)據(jù)段寄存器新增加的段寄存器FS附加段寄存器GS附加段寄存器。2