微機原理期終總結

2021-10-27 09:05:34 字數 4204 閱讀 4190

期終總結

第一章基礎知識

重點:數和字元的表示

1、 數的範圍

2、有符號數的補碼表示正數=原數

負數=取反+1

注:原碼需在上表範圍內)

例:-2補=00000010+1=11111101+1=0feh

3、數的編碼表示

(1). ascii碼

常見回車 0dh

換行 0ah

例如:「a」與0ah差37h

16進製制數轉換成ascii程式

cmp al,9h

jbe next

add al,7

next:add al,30h

stop: halt

(2).bcd碼的編碼表示

例:129=(0001,0010,1001)bcd

第四章微處理器

一、儲存器

1、8086/8088 cpu 20根位址線,儲存空間1m

5位16進製制,00000--fffffh)

2、 8086/8088程式設計時位址表示法:

邏輯位址(段,偏移相結合)

實體地址與邏輯位址換算關係:

段左移4位(二進位制)+偏移位址

例:資料段暫存器ds=1234h某變數偏移位址5678h

則該變數實體地址=12340h

5678h

179b8h

3、 pc機中變數存放格式(指字型)

低8位低位址高8位高位址

例:1234h

4、儲存空間與位址線關係空間=2n

5.儲存器位址解碼

1 全解碼法 ②部分譯法 ③線選法

試求2764中第3單元位址

a19 a18 a17 a16 a15 a14 a13 a12………a3 a2 a1 a0

1 1 1 1 0 1 1 0 0 0 1 1

為f6003h

二、**處理器

1、 結構:兩部分:執行部件(eu)+ 匯流排介面部件(biu)

2、 暫存器:通用暫存器

ax=ah+al sp 棧指

bx=bh+bl bp 基指

cx=ch+cl di 目的變址

dx=dh+dl si 源變址

段暫存器cs、ds、es、ss

指令偏移位址 ip

標誌暫存器 fr

3、 引腳

1 16腳(8根)資料線ad0-ad15(ad0-ad7)

2 20根位址 ad0-15加上a16-a19

3 最大/最小模式的區分 mn/mx

4 位址鎖存 ale

5 中斷 intr 、nmi

6 讀寫: io/ m (or io/m)

rd wr

iorc iowc

mrdc mwtc

4、 中斷

1 硬中斷非遮蔽nmi

可遮蔽intr

2 軟中斷

int3 斷點中斷

into(4號) 溢位中斷見p86

int1 單步中斷

int 除數為0

int n 中斷呼叫指令

3 中斷向量:

在記憶體的最初1k位元組中,存放256個位址,這256個位址(即中斷向量)是每個中斷服務子程式的入口位址

換算關係:中斷向量位址=中斷號×4

例:18號中斷向量位址=18×4=72=48h

2 中斷優先順序:

高低 a除數為0(除法出錯)、intn、into、int3(斷點)

高 b nmi

低 c intr

d 單步

中斷優先順序的含義體現在:

1. 同時中斷時只響應高優先順序

2. 正在執行中斷服務子程式時,只能被高優先順序中斷再次中斷

3 中斷現場的儲存:

被中斷服務子程式破壞的暫存器內容要儲存(通常用一系列push指令存入記憶體)

第5章指令系統

一 .定址方式

1.立即例 mov ax,70feh

2.暫存器定址例 mov al,bl

2.記憶體:①直接例 mov al ,[1000h]

(一般引用變數均直接定址。例mov al,data)

暫存器間接 [bx],[si],[di]

暫存器相對 [bx]

bp]si] +相對量

di]基址+變址 [bx] [si]

bp] [di]

相對基址變址[bx] [si] +disp

bp] [di]

注意: ①凡出現[bp]預設的段是ss段(堆疊指令也是)

其它的預設的均為ds段

字串操作。[si]預設的是從ds段

di]預設的是從es段

串傳送指令movs:

movsb

;位元組串傳送:es:[di]←ds:[si],si←si±1,di←di±1

movsw

;字串傳送: es:[di]←ds:[si],si←si±2,di←di±2

② 若改變這種預設方式為段超越

例:用bp指向ds段內資料

mov ax,ds:[bp]

二.轉移位址

重點:相對轉移量的計算

1.本身轉移指令位址是2位元組

指令助記符機器碼

cmp al,39h 30 39

jb next7b ?? 偏位移量

add al,7h 45 07

next: mov bl,al

位移量=目的位址-(當前指令位址+2)=2

若目的位址<(當前指令位址+2)

位移量為負: 補碼表示

2. 本身轉移指令位址是3位元組

位移量=目的位址-(當前指令位址+3)

三、偽指令中的$的含義

在彙編軟體中(masm),有一計數器,用作掃瞄使用者所程式設計序.無論是資料,還是程式,掃過乙個位元組,該計數器+1,該計數器作為$。

例: str db 12h,34h,56h

len equ $ -str(常數定義不佔記憶體)

例: mov al,70h

cmp al,ah

ja $+2 ;從當前位址向下跳2個位元組

mov al,00h

四、系統功能呼叫

mov ah 功能號

int 21h

功能號=1 等待單鍵得al=鍵入ascii

=2 輸出單字元,輸入字元存入dl

=9 輸出字串(到『$』結束) dx所佔的區域

第八章輸入、輸出介面

一、輸入/輸出控制方式

1、程式控制(直接、條件(查詢))

2、中斷控制

3、dma方式

4、輸入/輸出處理機方式

二、可程式設計並行介面晶元8255

1、 內部結構 pa、pb、pc,控制暫存器

由a0a1決定埠位址操作物件:

pa、pb、pc,控制暫存器

求各埠位址 a15 a14 a13 ………a1 a0

porta: e000h 1 1 1 ……… 0 0

portb: e001h0 1

portc: e002h1 0

portcn:e003h1 1

2、 控制字:

pa:工作方式 0,1,2

pb: 工作方式 0,1

pa在任意方式時,pb

pc: 在pa、pb作方式0,一般的並口

在pa、pb作方式1,2時,作應答線,此時作應答線的pc口線不可控制

例:pa方式1出、pb方式1入、pc4、pc5出。

如何寫控制字?

pc3、pc6、pc7用作pa口應答線

pc0、 pc1、pc2用作pb口應答線

控制字1,0,1,0,0,1,1 χ

pc0—pc3作應答用,此位隨便

三.8255並口應用

設計乙個用8255做成的並行印表機介面

工作方式0,程式控制(查詢)

向印表機送乙個字元的子程式:

print: mov dx,port_c

in al,dx

test al,00001000b

jnz print ;忙,再等待

微機原理總結

指令指標暫存器ip始終存有相對於當前指令段起點偏移量的下一條指令,即ip總是指向下一條待執行的指令。5 簡述8086系統中實體地址的形成過程。8086系統中的實體地址最多有多少個?邏輯位址呢?答 8086系統中的實體地址是由20根位址匯流排形成的。8086系統採用分段並附以位址偏移量辦法形成20位的...

微機原理總結

記得剛要上這門課的時候,學長就跟說這是一門很重要很有用的課程,對今後的一些課程設計或者是做一些專案之類的都有很大的幫助,特別是對畢業就想找工作的人來說學會微控制器就更重要了,所以我一直都很認真的在聽課,但是由於去參加北京市的電子設計大賽,老師允許我們不用做這門課的實驗,再加上這門課平時就沒有什麼要做...

微機原理總結

第一章,第二章,第三章 1.無符號數的範圍 0 255 2.有符號數 補碼 範圍是 128 127 同時of等與0結果正確。3.原碼反碼 範圍是 127 127 4.計算機的軟體系統一般分為 系統軟體和應用軟體 5.邏輯位址表示式 段位址 段內偏移位址,段位址放在 cs 偏移位址在 ip 段內偏移位...