寄存器存儲器指令
1. 指令寄存器的指令寄存器
指令寄存器(IR,Instruction Register)。存放當前從主存儲器讀出的正在執行的一條指令。當執行一條指令時,先把它從內存取到數據寄存器(DR,Data Register)中,然後再傳送至IR。指令劃分為操作碼和地址碼欄位,由二進制數字組成。為了執行任何給定的指令,必須對操作碼進行測試,以便識別所要求的操作。指令解碼器就是做這項工作的。指令寄存器中操作碼欄位的輸出就是指令解碼器的輸入。操作碼一經解碼後,即可向操作控制器發出具體操作的特定信號。
2. CPU存儲器的指令寄存器
32位CPU把指令指針擴展到32位,並記作EIP,EIP的低16位與先前CPU中的IP作用相同。
指令指針EIP、IP(Instruction Pointer)是存放下次將要執行的指令在代碼段的偏移量。用來提供指令在存儲器中的地址。在具有預取指令功能的系統中,下次要執行的指令通常已被預取到指令隊列中,除非發生轉移情況。所以,在理解它們的功能時,不考慮存在指令隊列的情況。
在實方式下,由於每個段的最大范圍為64K,所以,EIP中的高16位肯定都為0,此時,相當於只用其低16位的IP來反映程序中指令的執行次序。
3. 程序存儲器 指令寄存器 程序計數器 地址寄存器 有什麼區別都是干什麼的
先明白定義再說區別和原理:
1、程序存儲器(program storage)
在計算機的主存儲器中專門用來存放程序、子程序的一個區域。
2、指令寄存器(IR ):用來保存當前正在執行的一條指令。當執行一條指令時,先把它從內存取到數據寄存器(DR)中,然後再傳送至IR。指令劃分為操作碼和地址碼欄位,由二進制數字組成。為了執行任何給定的指令,必須對操作碼進行測試,以便識別所要求的操作。指令解碼器就是做這項工作的。指令寄存器中操作碼欄位的輸出就是指令解碼器的輸入。操作碼一經解碼後,即可向操作控制器發出具體操作的特定信號。
3、程序計數器(PC):為了保證程序(在操作系統中理解為進程)能夠連續地執行下去,CPU必須具有某些手段來確定下一條指令的地址。而程序計數器正是起到這種作用,所以通常又稱為指令計數器。在程序開始執行前,必須將它的起始地址,即程序的一條指令所在的內存單元地址送入PC,因此程序計數器(PC)的內容即是從內存提取的第一條指令的地址。當執行指令時,CPU將自動修改PC的內容,即每執行一條指令PC增加一個量,這個量等於指令所含的位元組數,以便使其保持的總是將要執行的下一條指令的地址。由於大多數指令都是按順序來執行的,所以修改的過程通常只是簡單的對PC加1。
當程序轉移時,轉移指令執行的最終結果就是要改變PC的值,此PC值就是轉去的地址,以此實現轉移。有些機器中也稱PC為指令指針IP(Instruction Pointer)
4、地址寄存器:用來保存當前CPU所訪問的內存單元的地址。由於在內存和CPU之間存在著操作速度上的差別,所以必須使用地址寄存器來保持地址信息,直到內存的讀/寫操作完成為止 。�
當CPU和內存進行信息交換,即CPU向內存存/取數據時,或者CPU從內存中讀出指令時,都要使用地址寄存器和數據緩沖寄存器。同樣,如果我們把外圍設備的設備地址作為像內存的地址單元那樣來看待,那麼,當CPU和外圍設備交換信息時,我們同樣使用 地址寄存器和數據緩沖寄存器
基本上定義就是區別和應用。
4. 指令寄存器包括什麼
一條指令由指令碼和地址碼兩部分組成,指令碼告訴計算機要做什麼,地址碼告訴計算機到什麼地方找參加運算的操作的數。
任何一台計算機的指令系統一般都包含有幾十條到上百條指令,下面按一般計算機的功能把指令劃分以下幾種類型.
(1)算術運算指令
計算機指令系統一般都設有二進制數加\減\比較和求補等最基本的指令,此外還設置了乘\除法運算指令\浮點運算指令以有十進制動算指令等.
(2)邏輯運算指令
一般計算機都具有與\或\非(求反)\異或(按位加)和測試等邏輯運算指令.
(3)數據傳送指令.
這是一種常用的指令,用以實現寄存器與寄存器,寄存器與存儲單元以及存儲器單元與存儲器單元之間的數據傳送,對於存儲器來說,數據傳送包括對數據的讀(相當於取數指令)和寫(相當於存數指令)操作.
(4)移位操作指令
移位操作指令分為算術移位\邏輯移位和循環移位三種,可以實現對操作數左移或右移一位或若干位.
(5)堆棧及堆棧操作指令.
堆棧是由若干個連續存儲單元組成的先進後出(FILO)存儲區,第一個送入堆棧中的數據存放在棧底,最後送入堆棧中的數據存放在棧頂.棧底是固定不變的,而棧頂卻是隨著數據的入棧和出棧在不斷變化.
(6)字元串處理指令.
字元串處理指令就是一種非數值處理指令,一般包括字元串傳送,字元串轉換(把一種編碼的字元串轉換成另一種編碼的字元串),字元串比較,字元串查找(查找字元串中某一子串),字元串匹配,字元串的抽取(提取某一子串)和替換(把某一字元串用另一字元串替換)等.
(7)輸入輸出(I/O)指令.
計算機本身公是數據處理和管理機構,不能產生原始數把,也不能長期保存數據.所處理的一切原始數據均來自輸入設備,所得的處理結果必須通過外總設備輸出.
(8)其它指令.
特權指令----具有特殊許可權的指令,在多服務用戶\多任務的計算機系統中,特權指令是不可少的.
陷阱與陷阱指令---陷阱實際上是一種意外事故中斷,中斷的目的不是為請求CPU的正常處理,面是為了通知CPU所出現的故障,並根據故障情況,轉入相就的故障處理程序.
轉移指令---用來控製程序的執行方向,實現程序的分支.
子程序調用指令---在騙寫程序過程中,常常需要編寫一些經常使用的\能夠獨立完成的某一特定功能的程序段,在需要時能隨時調用,而不必重復編寫,以便節省存儲空間和簡化程序設計.
5. 簡述存儲器與寄存器的異同,並用指令說明
存儲器在主板上,容量打,速度滿;寄存器在CPU內部,是CPU運算時存取數據的地方,所有數據必須從存儲器轉入寄存器,CPU才能使用,寄存器容量小,但速度很快。
6. 計算機組成原理:存儲器的地址寄存器(MAR)存放的是指令的地址,還是操作數的地址 如果說
操作數地址,處理器中專門有一個存放指令地址的寄存器,叫做PC(program counter:程序計數器)或者IP(instruction pointer:指令指針)
7. 在計算機中,指令主要存放在 中。 A)寄存器 B)存儲器 C)鍵盤 D)CPU
實話給你說吧,是緩存器
CPU緩存(Cache Memoney)位於CPU與內存之間的臨時存儲器,它的容量比內存小但交換速度快。在緩存中的數據是內存中的一小部分,但這一小部分是短時間內CPU即將訪問的,當CPU調用大量數據時,就可避開內存直接從緩存中調用,從而加快讀取速度。由此可見,在CPU中加入緩存是一種高效的解決方案,這樣整個內存儲器(緩存+內存)就變成了既有緩存的高速度,又有內存的大容量的存儲系統了。緩存對CPU的性能影響很大,主要是因為CPU的數據交換順序和CPU與緩存間的帶寬引起的。
緩存的工作原理是當CPU要讀取一個數據時,首先從緩存中查找,如果找到就立即讀取並送給CPU處理;如果沒有找到,就用相對慢的速度從內存中讀取並送給CPU處理,同時把這個數據所在的數據塊調入緩存中,可以使得以後對整塊數據的讀取都從緩存中進行,不必再調用內存。
正是這樣的讀取機制使CPU讀取緩存的命中率非常高(大多數CPU可達90%左右),也就是說CPU下一次要讀取的數據90%都在緩存中,只有大約10%需要從內存讀取。這大大節省了CPU直接讀取內存的時間,也使CPU讀取數據時基本無需等待。總的來說,CPU讀取數據的順序是先緩存後內存。