微機原理第三章pentium微處理器的指令系統(tǒng)_第1頁
微機原理第三章pentium微處理器的指令系統(tǒng)_第2頁
微機原理第三章pentium微處理器的指令系統(tǒng)_第3頁
微機原理第三章pentium微處理器的指令系統(tǒng)_第4頁
微機原理第三章pentium微處理器的指令系統(tǒng)_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

?第三章Pentium微處理器的指令系統(tǒng)

:3.1概述

?3.2Pentium微處理器的尋址方式

?3.3數據傳送指令

:3.4算術運算指令

:3.5邏輯運算指令

?3.6串操作指令

?3.7程序控制指令

,3.8保護模式的系統(tǒng)控制指令

:3.9浮點運算指令

>3.10MMX指令簡介

3.1概述

?指令是微處理器執(zhí)行某種操作的命令,微處理器全

部指令的集合稱為指令系統(tǒng)。

■指令有兩種書寫格式:機器指令和符號指令。

?符號指令是用規(guī)定的助記符和規(guī)定的書寫格式書寫

的指令。符號指令的書寫格式為:

操作碼助記符操作數助記符

MOVAL,1

1011000000000001

:3.2Pentium微處理器的尋址方式

??尋址方式:尋找指令中操作數地址的方式。

■操作數有三種可能的存放方式:

?直接包含在指令中

:.立即數

Li立即數尋址

.?包含在某個寄存器中

寄存器操作數

寄存器尋址

?在內存中

’?存儲器操作數(內存操作數)

r*存儲器尋址

內存實際地址由兩部分組成:存儲單元所在段的基

?地址/段內偏移地址(偏移量)

■MOVES:[3000H],AL

>段內偏移地址可以由如下四個部分組成(稱為偏移

地址四元素):

,??基址寄存器內容

?變址寄存器內容

?比例因子

.?位移量

由四元素組合形成的偏移地址稱為有效地址EA:

EA=基址+(變址x比例因子)+位移量

對于實模式(16位尋址):

?基址寄存器:BX,BP

?變址寄存器:SI,DI

?比例因子:0,1

一位移量:0,8,16位

對于保護模式(32位尋址):

基址寄存器:任何32位通用寄存器

變址寄存器:除ESP外的任何32位通用寄存器

比例因子:1,2,4,8

位移量:0,8,32位

?由四元素可組合出9種存儲器尋址方式。

>Pentium微處理器共有11種尋址方式:

.?1.立即數尋址

?操作數作為立即數直接存在指令中,可為字節(jié)、字、

―雙字

2.寄存器尋址

操作數包含在指令規(guī)定的8位、16位、32位寄存器

MOVECX,EDX

ECXEDX

12H34H56H78H56H]78H

寄存器尋址由于無需從存儲器中取操作數,故執(zhí)行

速度快

3.直接尋址

指令中的操作數部分直接給出操作數的有效地址

如果操作數在DS以外的其他段(CS,SS,ES,FS,GS)

?4.寄存器間接尋址

?操作數地址的偏移量(有效地址EA)存放在寄存

?器中

?16位尋址:偏移地址放在SI,DI,BP,BX中

?以SI,DI,BX間接尋址,默認操作數在DS段中

?MOVAX,[SI]

.以BP間接尋址,默認操作數在SS段中

:MOVAX,[BP]

.32位尋址:偏移地址放在8個32位通用寄存器中

除ESP,EBP默認段寄存器為SS外,其余均默認

■段寄存器為DS

MOVAX,[BP]

70000

+BP3000

70000

73000

73000

AX12H34H

5.基址尋址

EA=[基址寄存器]+位移量

16位尋址:BP,BX為基址寄存器

BX,DS為默認段寄存器

BP,SS為默認段寄存器

32位尋址:8個32位通用寄存器均可作為基址寄存

器,除ESP,EBP默認段寄存器為SS外,其余均默認

段寄存器為DS

MOVEAX,[BX+24]

MOVDX,[EAX+1500]

MOVDX,[BX+1500]

DS7000|0

BX|2000

+1500

73500

AX12H34H.

高地址

6.變址尋址

EA=[變址寄存器]+位移量

16位尋址:SLDI為基址寄存器,DS為默認段寄存器

??

32位尋址:除ESP外其余7個32位通用寄存器均可

作為變址寄存器,EBP默認SS為段寄存器,其余均

默認段寄存器為DS

MOVAH,[SI+5]

變址尋址適用于對一維數組的元素進行操作。

7.比例變址尋址

EA=[變址寄存器]x比例因子+位移量

只適用于32位尋址

MOVEAX"ESI*4+50]

比例變址尋址適用于一維數組操作,當數組元素大

小為2/4/8字節(jié)時,它更方便、有效

8.基址加變址尋址

EA=[基址寄存器]+[變址寄存器]

適用于16位和32位尋址

MOVAX,[BX+SI]

MOVEAX,[EDX+EBP]

基址加變址尋址主要用于二維數組操作和二重循環(huán)

9.基址加比例變址尋址

EA=[變址寄存器]x比例因子+[基址寄存器]

只適用于32位尋址

MOVEAX"EDX*8+EAX]

適用于數組元素大小為2/4/8字節(jié)時二維數組操作

10.帶位移的基址加變址尋址

QEA=[基址寄存器]+[變址寄存器]+位移量

?適用于16位和32位尋址

.MOVAX,[BX+SI+50]

.MOVEAX,[EDX+EBP+0FFFF000H]

主要用于二維數組操作,位移量為數組起始地址

11.帶位移的基址加比例變址尋址

EA=[變址寄存器]x比例因子+[基址寄存器]+位移量

只適用于32位尋址

MOVAX,[BX+SI+50]

MOVEAX,[EDX+EBP+0FFFF000H]

適用于數組元素大小為2/4/8字節(jié)時二維數組操作,位

移量為數組起始地址

3.3數據傳送指令

執(zhí)行后不影響標志位,源操作數不變

1.通用數據傳送指令

■MOV目標操作數,源操作數

1)源操作數可以是8/16/32位的立即數、寄存器操

作數、內存操作數。目標操作數不允許為立即數,

其余同源操作數。源、目不能同時為內存操作數。

2)源、目操作數類型必須匹配

MOVBYTEPTR[BX],12H

3)不能向段寄存器寫立即數

MOVAX,2000

MOVDX,AX

4)以CS為目標的一切傳送指令都是非法的

??MOVSX目標寄存器,源操作數

?符號擴展傳送指令

?MOVDL,-16

>MOVSXBX,DL

??MOVZX目標寄存器,源操作數

?零擴展傳送指令

MOVDL,-16

MOVZXBX,DL

?XCHG目標操作數,源操作數

交換指令,源、目不能同為內存操作數

XCHGAX,[SI+0400H]

?BSWAP32位寄存器

字節(jié)交換指令,

MOVEAX,12345678H

BSWAPEAX

?XLAT表頭變量名

一查表指令,用來取表中某指定數的值

TABLEDB48,49,50,51,52,53,54,55,56,57

MOVBX,OFFSETTABLE

MOVAL,5

XLATTABLE

執(zhí)行后AL=53

?LAHF

SAHF

標志寄存器傳送指令

2.堆棧操作指令

'?-PUSH源操作數

進棧指令,先調整堆棧指針,再把源操作數壓棧

*

?PUSHAX

?PUSHDWORDPTR[SI+5]

?POP目標操作數

?出棧指令,先將棧頂2/4字節(jié)送目標操作數,再調

,?整堆棧指針

:POPAX

.POPDWORDPTR[SI+5]

?PUSHF

POPF

16位標志寄存器進棧/出棧指令

?PUSHFD

POPFD

32位標志寄存器進棧/出棧指令

?PUSHA

POPA

16位通用寄存器進棧/出棧指令

?PUSHAD

POPAD

32位通用寄存器進棧/出棧指令

:3.目標地址傳送指令

??LEA目標寄存器,源操作數

?有效地址傳送指令,源操作數為內存操作數,將

?內存單元的有效地址(而不是內容)傳送到目標

寄存器

?LEAEAX,[SI+5]

.?-LDS/LES/LFS/LGS/LSS目標寄存器,源操作數

.?指針傳送指令

:ADDRDD1A2B3C4DH

.LDSSI,ADDR

4.1/0數據傳送指令

*完成累加器和I/O端口之間的數據傳送

多“N累加器,端口號

?端口號為8位時,直接尋址,最多可訪問256個端口

?INAX,PORT

Q端口地址為16位時,間接尋址,端口地址必須放

「?在DX寄存器中,最多可訪問65536個端口

,?INAL,DX

?OUT端口號,累加器

?3.4算術運算指令

*力口、減、乘、除,運算對象8/16/32位有符號/無符號

整數,以及BCD碼

影響標志位

1.加法指令

?-ADD目標操作數,源操作數

[?[源操作數+目標操作數—>目標操作數

,/[?ADC目標操作數,源操作數

’.源操作數十目標操作數+CF——>目標操作數

':'影響A,CQ,P,S,Z6個標志位

K-INC目標操作數

;目標操作數+1——>目標操作數

影響AQ.RS.Z5個標志何

2.減法指令

?SUB目標操作數,源操作數

目標操作數-源操作數——>目標操作數

?SBB目標操作數,源操作數

目標操作數■源操作數?CF——>目標操作數

?DEC目標操作數

目標操作數-1——>目標操作數

?NEG目標操作數

0■目標操作數——>目標操作數

影響A,CQ,P5Z6個標志位

■CMP目標操作數,源操作數

比較

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論