計算機原理課程總結 部分

2021-12-21 16:45:33 字數 4210 閱讀 2995

一.8086微處理器內部結構

(一)匯流排介面單元(biu)

1.段位址暫存器(16位):cs、ds、es、ss;

2.指令指標暫存器ip(16位);

3.形成20位實體地址的加法器∑;

4.指令佇列(isq,6個位元組);

5.與eu通訊的內部暫存器;

6.匯流排控制邏輯。

(二)、執行單元(eu)

1.算數邏輯單元alu(16位);

2、資料暫存器(16位):ax、bx、cx、dx;

3.位址指標暫存器(16位):bp、sp、si、di;

位):cf、of、sf、zf、pf、af、tf、if、df;

控制電路;

6.資料暫存器(16位)。

*sp只與ss配合使用,bp一般與ss配合使用。

*bx用作基址指標暫存器時,通常與ds配對使用

*實體地址=段位址*10h+偏移位址(由biu的∑形成);

*邏輯位址-段位址:偏移位址

*記憶:段超越

二、8086引腳分類【資料匯流排、位址匯流排、控制匯流排、其他】

1. 匯流排訊號【位址匯流排】

1)ad0~ad15:位址資料復用匯流排(雙向,高電平有效);

2)a16/s3~a19/s6:位址狀態復用引腳(輸出,高電平有效。其中a19~a16為20位位址匯流排的高4位位址,s6~s3是狀態訊號。

s6表示cpu與匯流排連線的情況,s5指示當前中斷允許標誌if的狀態。s4,s3的**組合用來指明當前正在使用的段暫存器。s4,s3的**組合及對應段暫存器的情況。

);3)bhe/s7:高8位資料匯流排允許/狀態復用引腳(輸出,低電平有效,s7表示狀態訊號);

4)ale:位址鎖存允許訊號(輸出,高電平有效。ale為高電平時,ad15~ad0上為位址訊號,否則為空閒狀態或資料訊號);

2.中斷控制

1)intr:可遮蔽中斷響應(輸入,高電平有效);

2)inta:中斷響應訊號(輸出,低電平有效。當intr的請求被允許時,其值等於0);

*cpu根據if 的狀態來決定是否響應intr,if=1時則響應,否則不響應。

3)nmi:不可遮蔽中斷響應(輸入,高電平有效,且cpu必須響應)。

*中斷:即cpu打斷正在處理的訊號,轉而處理外設訊號,當處理完成之後,再從斷點繼續處理原訊號。

3.匯流排控制

1)hold:匯流排保持請求訊號(輸入,高電平有效。向cpu請求占用匯流排);

2)hlda:匯流排保持響應訊號(輸出,高電平有效。當hold的請求被允許時,其值為1)。

控制1)ready:準備好訊號(輸入,高電平有效。)

2)test:測試訊號(低電平有效。有效時cpu退出wait指令);

3)reset:復位訊號(輸入,高電平有效。當reset訊號有效時,cpu會停止當前訊號,cs被置為ffffh,其餘所有暫存器全部置零,則復位後執行的第一條指令的位址為ffff0h);

4)mn/mx:決定是最大模式(該訊號的值為0)還是最小模式(該訊號的值為1)。【其他】

5.系統控制

1)m/io:儲存器/輸出輸入控制訊號(輸出,高電平時表示當前資訊為儲存器位址資訊;低電平表示當前資訊是i/o口位址資訊);

2)rd:讀訊號(輸出,低電平有效。表示cpu正在從儲存器或i/o口讀入資訊);

3)wr:寫訊號(輸入,高電平有效。表示cpu正在向儲存器或i/o口輸出資訊);

【以下兩個訊號屬於資料匯流排】

4)den:資料允許訊號(輸出,低電平有效。其值為0時表示ad0~ad15上為資料訊號,為1時則表示空閒狀態。該訊號不可能與ale同時有效);

5)dt/r:資料收發訊號(輸出。高電平表示cpu正在發出訊號,低電平則表示cpu正在接收訊號)。

6.其他【其他】

1)clk:時鐘訊號

2)vcc,gnd :電源及地。

三.8086微處理器操作時序

1.時鐘週期

2.匯流排週期

3.指令週期

*重點(必須會讀圖):

1)儲存器讀週期

2)最小模式下i/o口讀時序

四.組合語言定址方式與指令系統

(一)、資料定址方式(程式定址方式在此不做介紹)

1.隱含定址:如daa指令;

2.立即定址:mov 目的運算元,立即數;

3.暫存器定址:mov 目的運算元,暫存器名稱;

4.儲存器定址

1)直接定址

mov 目的運算元,邏輯位址或偏移位址或變數名;

2)暫存器間接定址

a.基址定址:[基址暫存器+位移量] 或位移量[基址暫存器];

b.變址定址:[變址暫存器];

c.基址變址定址:[基址暫存器+變址暫存器] 或 [基址暫存器][變址暫存器];

d.相對基址變址定址:[基址暫存器+變址暫存器+位移量];

e.資料串定址:如movsb、movsw指令;

* 基址:由bx或bp提供的偏移位址;

變址:由si或di提供的偏移位址。

埠定址

1)直接埠定址:指令直接提供8位埠位址;

2)間接埠定址:由dx暫存器給出16位埠位址。

如:mov dx, 162h

in ax, dx將埠位址為dx的資料傳送給ax

(二)、8086指令系統

1.傳送類指令

1)傳送指令:mov 目的運算元,源運算元

2)進棧指令(spsp-2):push 運算元(16位,可以為暫存器等,但不能是立即數);

3)出棧指令(spsp+2):pop 運算元(16位,可以為暫存器等);

4)交換指令(將記憶體單元的資料交換):xchg 目的運算元,源運算元;

5)查表指令:xlat

功能:alal+bx,將資料段中偏移位址為後者的記憶體單元的內容送入al中。其中,bx為所查表的表頭位址,al為要查詢的元素在表中的相對偏移量;

6)位址傳送類指令:lea、lds/les

7)標誌傳送指令:lahf(暫存器的低8位送給ah)、sahf(暫存器的7、6、4、2、0位分別送給sf/zf/af/pf/cf)、pushf、popf

2.算術運算類指令(十進位制算術運算指令在此不做介紹)

*neg指令:求運算元的負數。若被取補的數非零,則取反後cf=1,否則cf=0;

*執行乘法運算時,若運算元為位元組長度,則axal*運算元。若為字長度,則dx:axax*運算元。乘數儲存在al和ax中;

*執行除法運算時,若運算元為位元組長度,則ax/運算元,al商,ah餘數。若為字長度,則dx:ax/運算元,ax商,dx餘數。被除數放在ax和dx:ax中。

3.轉移類指令

1)無條件轉移指令:jmp 標號

2)條件轉移指令(指令後全加標號)

a.單標誌判斷:jc/jnc、jz(je)/jnz(jne)、jo/jno、jp(jpe)/jnp(jpo)、js/jns;

b.無符號數比較:ja/jbe、jae/jnb、jb/jnae、jbe/jna;

c.有符號數比較:jg/jnle、jge/jnl、jl/jnge、jle/jng;

3)迴圈控制指令

a.無條件迴圈控制:loop 標號(若cx-1≠0則轉移,否則退出迴圈);

b.相等迴圈控制:loopz/loope 標號(若cx-1≠0且zf=1則轉移,否則退出迴圈);

c.不相等迴圈控制:loopnz/loopne 標號;

d.jcxz 標號:若cx=0則轉移,否則執行後續指令。

*這裡的標號指迴圈體或跳轉體的名稱。

4.位操作指令

*移位次數可以直接寫1,若移位次數大於1則必須由cl指出,移位後cl的值不變;

*迴圈左移的最高位給cf,迴圈右移的最低位給cf。

5.串操作指令

1)串傳送:movsb、movsw;

2)串比較:cmpsb、cmpsw;(不能改變zf的值)

3)串搜尋:scasb、scasw;

4)從源串中取數:lodsb、lodsw(改變si的值,目的運算元為別為al、ax);

5)往目的串中存數:stosb、stosw(改變di的值,源運算元分別為al、ax);

6)串操作重複字首

a)rep:無條件重複字首,用於movs、stos指令前,重複次數僅與cx有關,在兩資料串中找出不同元素;

b)repz/repe:相等重複字首,只用於cmps、scas指令前,重複次數與cx和zf有關;

c)repnz/repne:不相等重複字首,只用於cmps、scas指令前,重複次數與cx和zf有關,在兩資料串中找出相同元素;

《計算機組成原理》部分習題答案

第一章計算機系統概論 1.什麼是計算機系統 計算機硬體和計算機軟體?硬體和軟體哪個更重要?答 計算機系統 由計算機硬體系統和軟體系統組成的綜合體。計算機硬體 指計算機中的電子線路和物理裝置。計算機軟體 計算機執行所需的程式及相關資料。硬體和軟體在計算機系統中相互依存,缺一不可,因此同樣重要。5.馮諾...

計算機原理知識總結

第一章計算機系統概論 1 計算機的發展史,以器件劃分 第一代 電子管計算機,第二代 電晶體計算機 第三代 積體電路 ic 計算機,大規模積體電路 lsi 計算機。就計算機語言劃分為 第一代 機器語言,第二代 組合語言,第三代 高階語言 2 計算機硬體系統是指構成計算機的所有物理部件的集合。3 計算機...

計算機原理複習總結

第一章計算機基礎知識 本章的主要內容為不同進製計數制計數方法 不同進製數之間相互轉換的方法 數和字元在計算機中的表示方法 簡單的算術運算以及計算機系統的組成。下邊將本章的知識點作了歸類。第二章 8086微處理器 本章要從應用角度上理解8086cpu的內部組成 程式設計結構 引腳訊號功能 最小工作模式...