指令中所需的操作數(shù)來自哪
尋找指令中所需的操作數(shù)或操作數(shù)地址的方式被稱為尋址方式。指令中所需的操作數(shù)來自以下幾個方面。
(1)操作數(shù)包含在指令中。在取指令的同時,操作數(shù)也隨著取出,這種操作數(shù)被稱為立即數(shù)。
(2)操作數(shù)包含在CPU的某個內(nèi)部寄存器中。由于該寄存器在CPU內(nèi)部,因此取操作數(shù)也較簡單。
(3)操作數(shù)在內(nèi)存儲器中。由于內(nèi)存儲器在CPU的外部,因此在尋找此種操作數(shù)時需要執(zhí)行一個總線周期,首先找到該操作數(shù)在內(nèi)存中存放的地址,再從該地 址中取出操作數(shù)。在80x86微機系統(tǒng)中,任何內(nèi)存單元的地址由段基址和偏移地址(又稱偏移量)組成,段基址由段寄存器提供,而偏移地址則由以下四個基本 部分組合而成:
基址寄存器;
間址寄存器(或稱變址寄存器);
比例因子;
位移量。
這四個部分被稱為偏移地址四元素。一般將這四種元素按某種計算方法組合形成的偏移地址稱為有效地址EA(Effective Address)。它們的組合方式和計算方法為:
EA基址+(間址×比例因子)+位移量
采用16位尋址時,位移量是8位或16位,用BX和BP作基址寄存器,SI和DI作間址寄存器,比例因子為1。
采用32位尋址時,可使用8位和32位的位移量,32位的通用寄存器都可以作基址寄存器或間址寄存器(ESP不用于間址),并且可采用2、4或8幾種不同的比例因子。
這四種元素可優(yōu)化組合出9種存儲器尋址方式,加上立即數(shù)尋址和寄存器尋址,共有11種尋址方式,下面詳細討論。為了說明數(shù)據(jù)的尋址方式,以匯編語言中的MOV指令為例。指令的格式為:MOV目標操作數(shù),源操作數(shù);其功能是將源操作數(shù)傳送到目標操作數(shù)。
1.立即數(shù)尋址(Immediate Addressing)
指令中所需操作數(shù)存放在指令中,放在操作碼(OP)后。操作數(shù)可以是8位、16位或32位。由于在指令執(zhí)行過程中,立即數(shù)作為指令的一部分直接從指令預取單元中取出,不需要再訪問存儲器,因此這種尋址方式執(zhí)行速度快。
例如,在MOV AX,1020H指令中,1020H為立即數(shù),該指令的功能是將立即數(shù)1020H傳送到AX中,執(zhí)行示意圖見。
立即數(shù)尋址時,只允許源操作數(shù)為立即數(shù),目標操作數(shù)必須是寄存器或存儲器,其作用是給寄存器或存儲單元賦值。
2.寄存器尋址(Register Addressing)
指令中所需操作數(shù)在CPU的某個寄存器中,由于存取此類操作數(shù)在CPU內(nèi)部進行,所以執(zhí)行速度快。
例如:MOV AL, BL
執(zhí)行情況見。
3.直接尋址(Direct Addressing)
操作數(shù)一般存放在存儲器的數(shù)據(jù)段中,而操作數(shù)的有效地址EA(16位或32位)由指令給出。在直接尋址中,為取得操作數(shù)必須先求出存放操作數(shù)的存儲單元的物理地址。如果操作數(shù)在數(shù)據(jù)段中,則求得:物理地址(DS)×16+EA,其操作過程。
例如:MOV AX, DS:[2000H]
設(DS)3000H,物理地址(3000H)×16+2000H32000H,即將存儲器32000H和32001H兩個單元的內(nèi)容送到AX寄存器。注意,低地址的存儲單元32000H的內(nèi)容送到AX的低字節(jié)AL中。
直接尋址允許用符號地址來代替數(shù)值地址,例如:MOV AX,[DATA],此時變量DATA為存放操作數(shù)的存儲單元的符號地址。上述指令還可寫為:MOV AX, DATA,兩者是等效的。直接尋址適用于處理單個變量。
4.寄存器間接尋址(Register Indirect Addressing)
操作數(shù)在存儲器中,操作數(shù)的有效地址EA存放在某個寄存器(Reg)中,其尋址方式。寄存器的使用在16位尋址和32位尋址時不一樣。
1)16位尋址
偏移地址放在SI、DI、BX、BP中。
如果指令中指定的寄存器是BX、SI、DI,則操作數(shù)在數(shù)據(jù)段中,操作數(shù)的物理地址為:
物理地址(DS)×16+(BX)
……(SI)
……(DI)
如果指令中指定的寄存器是BP,則操作數(shù)在堆棧段中,段基址在SS中,操作數(shù)的物理地址為:
物理地址(SS)×16+(BP)
2)32位尋址
8個32位通用寄存器均可作寄存器間接尋址用。除ESP和EBP默認段寄存器為SS外,其余6個通用寄存器均默認段寄存器為DS。
作者:大學生新聞網(wǎng) 來源:大學生新聞網(wǎng)
- 面對面學習總是比在線學習好嗎
- 最近關于重新開放學校的激烈爭論主要取決于在線教學的質(zhì)量。這是可以理解的。但是,關于在線指導的許多內(nèi)容仍然被誤解。現(xiàn)在該改變這種
- 06-09 關注:73
- 在線學習的4條建議
- 印第安納大學(IU)的新資源介紹了使在線學習成功的一些最重要因素。
當IU關閉體育課并轉向在線教學時,電子學習研究與實踐實驗室開始
- 06-09 關注:65
- 激光視盤 可以自由放置和使用
- 激光視盤采用丙烯酸塑料制成,大多數(shù)光盤直徑為30厘米(C12英寸),也有13厘 米(5英寸)的小型盤,盤的轉速為1500轉/分,但應指出,為
- 09-18 關注:133
- 數(shù)字技術用于語音信號高效多路傳輸
- 欣賞聲音、喜愛音樂,這是音響的源點。為了滿足這一需要,音響系統(tǒng)需由兩個系統(tǒng)組成。其一是對音樂與人聲加以收音并加以調(diào)整,記錄在唱
- 09-18 關注:122
- 電腦正在進入有線電視網(wǎng)
- 當前,隨著數(shù)字計算機和多媒體技術的發(fā)展,許多大的計算機制造公司都提出,在微型計算機上實現(xiàn)電視的功能,即利用計算機網(wǎng)絡來接收數(shù)字
- 09-18 關注:128
- 電視信號的傳輸過程
- 當前,像高保真音響、高清晰度電視、VCD、數(shù)碼錄音等新詞匯大量充斥在我們身邊,它們一方面代表這新技術的涌現(xiàn),另一方面也體現(xiàn)了這些
- 09-18 關注:196
- 計算機6.2.180x86中斷結構及類型
- 從Intel 8086/8088、286、386、486直到Pentium系列微處理器,它們中斷系統(tǒng)的結構基本相同,不同之處主要有兩點:一是 因CPU的工作模式
- 09-18 關注:132
- 中斷技術引入計算機系統(tǒng)
- 中斷技術是現(xiàn)代計算機系統(tǒng)中很重要的功能。最初,中斷技術引入計算機系統(tǒng),只是為了解決快速的CPU與慢速的外部設備之間傳送數(shù)據(jù)的矛盾
- 09-18 關注:261