您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊]

您的位置:電子發(fā)燒友網(wǎng)>電子百科>半導(dǎo)體技術(shù)>半導(dǎo)體器件>

運(yùn)算器,運(yùn)算器的作用和原理是什么?

2010年03月24日 17:01 wenjunhu.com 作者:佚名 用戶評論(0
關(guān)鍵字:運(yùn)算器(16389)

運(yùn)算器,運(yùn)算器的作用和原理是什么?

運(yùn)算器:arithmetic unit,計(jì)算機(jī)中執(zhí)行各種算術(shù)和邏輯運(yùn)算操作的部件。運(yùn)算器的基本操作包括加、減、乘、除四則運(yùn)算,與、或、非、異或等邏輯操作,以及移位、比較和傳送等操作,亦稱算術(shù)邏輯部件(ALU)。計(jì)算機(jī)運(yùn)行時,運(yùn)算器的操作和操作種類由控制器決定。運(yùn)算器處理的數(shù)據(jù)來自存儲器;處理后的結(jié)果數(shù)據(jù)通常送回存儲器,或暫時寄存在運(yùn)算器中。

運(yùn)算器
運(yùn)算器的功能與分類
運(yùn)算器的基本功能是完成對各種數(shù)據(jù)的加工處理,例如算術(shù)四則運(yùn)算,與、或、求反等邏輯運(yùn)算,算術(shù)和邏輯移位操作,比較數(shù)值,變更符號,計(jì)算主存地址等。運(yùn)算器中的寄存器用于臨時保存參加運(yùn)算的數(shù)據(jù)和運(yùn)算的中間結(jié)果等。運(yùn)算器中還要設(shè)置相應(yīng)的部件,用來記錄一次運(yùn)算結(jié)果的特征情況,如是否溢出,結(jié)果的符號位,結(jié)果是否為零等。

計(jì)算機(jī)所采用的運(yùn)算器類型很多,從不同的角度分析,就有不同的分類方法。從小數(shù)點(diǎn)的表示形式可分為定點(diǎn)運(yùn)算器和浮點(diǎn)運(yùn)算器。定點(diǎn)運(yùn)算器只能做定點(diǎn)數(shù)運(yùn)算,特點(diǎn)是機(jī)器數(shù)所表示的范圍較小,但結(jié)構(gòu)較簡單。浮點(diǎn)運(yùn)算器功能較強(qiáng),既能對浮點(diǎn)數(shù),又能對定點(diǎn)數(shù)進(jìn)行運(yùn)算,其數(shù)的表示范圍很大,但結(jié)構(gòu)相當(dāng)復(fù)雜。從進(jìn)位制方面分為二進(jìn)制運(yùn)算器和十進(jìn)制運(yùn)算器。一般計(jì)算機(jī)都采用二進(jìn)制運(yùn)算器,隨著計(jì)算機(jī)廣泛應(yīng)用于商業(yè)和數(shù)據(jù)處理,越來越多的機(jī)器都擴(kuò)充十進(jìn)制運(yùn)算的功能,使運(yùn)算器既能完成二進(jìn)制的運(yùn)算,也能完成十進(jìn)制運(yùn)算。

運(yùn)算器
運(yùn)算器的組成
計(jì)算機(jī)中運(yùn)算器需要具有完成多種運(yùn)算操作的功能,因而必須將各種算法綜合起來,設(shè)計(jì)一個完整的運(yùn)算部件。運(yùn)算器的組成決定于整機(jī)的設(shè)計(jì)思想和設(shè)計(jì)要求,采用不同的運(yùn)算方法將導(dǎo)致不同的運(yùn)算器組成。但由于運(yùn)算器的基本功能是一樣的,其算法也大致相同,因而不同機(jī)器的運(yùn)算器是大同小異的。運(yùn)算器主要由算術(shù)邏輯部件、通用寄存器組和狀態(tài)寄存器組成。

1)算術(shù)邏輯部件ALU。ALU 主要完成對二進(jìn)制信息的定點(diǎn)算術(shù)運(yùn)算、邏輯運(yùn)算和各種移位操作。算術(shù)運(yùn)算主要包括定點(diǎn)加、減、乘和除運(yùn)算。邏輯運(yùn)算主要有邏輯與、邏輯或、邏輯異或和邏輯非操作。移位操作主要完成邏輯左移和右移、算術(shù)左移和右移及其他一些移位操作。某些機(jī)器中,ALU 還要完成數(shù)值比較、變更數(shù)值符號、計(jì)算操作數(shù)在存儲器中的地址等??梢姡珹LU 是一種功能較強(qiáng)的組合邏輯電路,有時被稱為多功能發(fā)生器,它是運(yùn)算器組成中的核心部件。ALU 能處理的數(shù)據(jù)位數(shù)(即字長)與機(jī)器有關(guān)。如 Z80 單板機(jī)中,ALU 是 8 位;IBM PC/XT 和 AT 機(jī)中,ALU 為 16 位;386 和 486 微機(jī)中,ALU 是 32 位。ALU 有兩個數(shù)據(jù)輸入端和一個數(shù)據(jù)輸出端,輸入輸出的數(shù)據(jù)寬度(即位數(shù))與 ALU 處理的數(shù)據(jù)寬度相同。

2)通用寄存器組近期設(shè)計(jì)的機(jī)器的運(yùn)算器都有一組通用寄存器。它主要用來保存參加運(yùn)算的操作數(shù)和運(yùn)算的結(jié)果。早期的機(jī)器只設(shè)計(jì)一個寄存器,用來存放操作數(shù)、操作結(jié)果和執(zhí)行移位操作,由于可用于存放重復(fù)累加的數(shù)據(jù),所以常稱為累加器。通用寄存器均可以作為累加器使用。通用寄存器的數(shù)據(jù)存取速度是非常快的,目前一般是十幾個毫微秒(ns)。如果 ALU 的兩個操作數(shù)都來自寄存器,則可以極大地提高運(yùn)算速度。

運(yùn)算器的組成和設(shè)計(jì)

通用寄存器同時可以兼作專用寄存器,包括用于計(jì)算操作數(shù)的地址(用來提供操作數(shù)的形式地址,據(jù)此形成有效地址再去訪問主存單元)。例如,可作為變址寄存器、程序計(jì)數(shù)器(PC)、堆棧指示器(SP)等。必須注意的是,不同的機(jī)器對這組寄存器使用的情況和設(shè)置的個數(shù)是不相同的。

3)狀態(tài)寄存器狀態(tài)寄存器用來記錄算術(shù)、邏輯運(yùn)算或測試操作的結(jié)果狀態(tài)。程序設(shè)計(jì)中,這些狀態(tài)通常用作條件轉(zhuǎn)移指令的判斷條件,所以又稱為條件碼寄存器。一般均設(shè)置如下幾種狀態(tài)位:

(1)零標(biāo)志位(Z):當(dāng)運(yùn)算結(jié)果為 0 時,Z 位置“1”;非 0 時,置“0”;(2)負(fù)標(biāo)志位(N):當(dāng)運(yùn)算結(jié)果為負(fù)時,N 位置“1”;為正時,置“0”;(3)溢出標(biāo)志位(V):當(dāng)運(yùn)算結(jié)果發(fā)生溢出時,V 位置“1”;無溢出時,置“0”;(4)進(jìn)位或借位標(biāo)志(C):在做加法時,如果運(yùn)算結(jié)果最高有效位(對于有符號數(shù)來說,即符號位;對無符號數(shù)來說,即數(shù)值最高位)向前產(chǎn)生進(jìn)位時,C 位置“1”;無進(jìn)位時,置“0”。在做減法時,如果不夠減,最高有效位向前有借位(這時向前無進(jìn)位產(chǎn)生)時,C 位置“1”;無借位(即有進(jìn)位產(chǎn)生)時,C 位置“0”。

除上述狀態(tài)外,狀態(tài)寄存器還常設(shè)有保存有關(guān)中斷和機(jī)器工作狀態(tài)(用戶態(tài)或核心態(tài))等信息的一些標(biāo)志位(應(yīng)當(dāng)說明,不同的機(jī)器規(guī)定的內(nèi)容和標(biāo)志符號不完全相同),以便及時反映機(jī)器運(yùn)行程序的工作狀態(tài),所以有的機(jī)器稱它為“程序狀態(tài)字”或“處理機(jī)狀態(tài)字”(Processor Status Word,PSW )。


與運(yùn)算器有關(guān)的計(jì)算機(jī)性能指標(biāo)
1)機(jī)器字長

機(jī)器字長是指參與運(yùn)算的數(shù)據(jù)的基本位數(shù)。它決定了寄存器、運(yùn)算器和數(shù)據(jù)總線的位數(shù),因而直接影響到硬件的價格。字長標(biāo)志著計(jì)算精度。為協(xié)調(diào)精度與造價,并滿足多方面的要求,許多計(jì)算機(jī)允許變字長計(jì)算,例如半字長、全字長和雙倍字長等。由于數(shù)和指令代碼都放在主存中,因而字長與指令碼長度往往有一個對應(yīng)關(guān)系,字長也就影響到指令系統(tǒng)功能的強(qiáng)弱。計(jì)算機(jī)字長從 4 位、8 位、16 位、32 位到 64 位不等。機(jī)器字長可包含一個或多個字節(jié)。用于科學(xué)計(jì)算的機(jī)器,為了確保精度,需要較長的字長;用于數(shù)據(jù)處理、工業(yè)控制的機(jī)器,字長為 16 位或 32 位就能滿足要求。

2)運(yùn)算速度

它是計(jì)算機(jī)的主要指標(biāo)之一。計(jì)算機(jī)執(zhí)行不同的運(yùn)算和操作所需的時間可能不同,因而對運(yùn)算速度存在不同的計(jì)算方法。一般常用平均速度,即在單位時間內(nèi)平均能執(zhí)行的指令條數(shù)來表示,如某計(jì)算機(jī)運(yùn)算速度為 100 萬次 /秒,就是指該機(jī)在一秒鐘內(nèi)能平均執(zhí)行 100萬條指令(即 1MIPS)。有時也采用加權(quán)平均法(即根據(jù)每種指令的執(zhí)行時間以及該指令占全部操作的百分比進(jìn)行計(jì)算)求得的等效速度表示。

非常好我支持^.^

(1726) 68.8%

不好我反對

(781) 31.2%

( 發(fā)表人:admin )

      發(fā)表評論

      用戶評論
      評價:好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關(guān)規(guī)定!

      ?