運算器是由:算邏運算單元ALU和寄存器組REGs組成,通過幾組多路選擇器電路實現相互連接;
即運算器由:算術邏輯單元(ALU)、累加器、狀态寄存器、通用寄存器組等組成。
運算器的基本功能是完成對各種數據的加工處理,
例如算術四則運算,與、或、求反等邏輯運算,算術和邏輯移位操作,比較數zhidao值,變更符号,計算主存地址等。運算器中的寄存器用于臨時保存參加運算的數據和運算的中間結果等。運算器中還要設置相應的部件,用來記錄一次運算結果的特征情況,如是否溢出,結果的符号位,結果是否為零等。
計算機所采用的運算器類型很多,從不同的角度分析,就有不同的分類方法。從小數點的表示形式可分為定點運算器和浮點運算器。
定點運算器隻能做定點數運算,特回點是機器數所表示的範圍較小,但結構較簡單。浮點運算器功能較強,既能對浮點數,又能對定點數進行運算,其數的表示範圍很大,但結構相當複雜。從進位制方面分為二進制運算器和十進制運算器。
一般計算機都采用二進制運算器,随着計算機廣泛應用于商業和數據處理,越來越多的機器都擴充十進制運算的功能,使運算器既能完成二進制的運算,也能完成十進制運算。計算機中運算器需要具有完成多種運算操作的功能,因而必須将各種算法綜合起來,設答計一個完整的運算部件。
(1)運算器的首要
功能是完成對數據的算術和邏輯運算,由其内部的一個被稱之為算術與邏輯運算部件(ALU)承擔,它在給出運算結果的同時,還給出結果的某些特征,如溢出否,有無進位輸出,結果是否為零、為負等,這些結果特征信息通常被保存在幾個特定的觸發器中。在執行指令的過程中,必須向ALU提供其執行何種運算的控制信号。
(2)運算器的第二項功能,是暫存将參加運算的數據和中間結果,由其内部的一組寄存器承擔。因為這些寄存器可以被彙編程序員直接訪問,通稱通用寄存器,以區别于那些計算機内部設置的、不能為彙編程序人員訪問的專用寄存器。為了向ALU提供正确的數據來源,必須向寄存器組提供将使用其哪1個、2個或3個寄存器的寄存器編号。
(3)為了用硬件線路完成乘除指令運算,有些運算器内還有一個能自行左右移位的專用寄存器,通稱乘商寄存器。由于該寄存器屬于内部專用,彙編程序員不能訪問。在RISC結構的計算機系統中,乘除法運算選用專門的部件完成,可以在定點運算中隻設置兩個保存乘除法計算結果的寄存器。
(4) 這些部件通過幾組多路選擇器電路實現相互連接,以便數據傳送。
(5) 運算器還要與計算機其它幾個功能部件連接在一起并協同運行,就必須有接受外部數據輸入和送出運算結果的邏輯電路。
運算器通常還作為處理機内部傳送數據的重要通路。
定點運算器部件的控制與操作如何讓運算器完成指定的運算操作功能,是通過向其提供正确的運算數據和控制信号實現的,包括選擇哪一個(幾個)數據參加運算,執行何種運算功能,對運算結果(結果的值和特征)如何保存與送出等;同時要解決如何接收外部送來的輸入數據,怎樣向外部送出運算結果等問題,正确給出ALU最低位的進位信号,運算器左右移位操作中的移位輸入信号等。
用到的控制信号是由計算機的控制器部件提供的,有了這些控制信号,運算器就能完成指定的運算功能,運算器在計算機系統中處于執行部件的地位,受控制器部件的指揮控制。
ALU的線路實現方案
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!