2014計算機三級《PC技術》考試要點:80x86指令系統(4)
4.數據傳送指令組
數據傳送指令中增加的3條有關地址操作的指令:
LFS 指針裝入F段寄存器
LGS 指針裝入G段寄存器
LSS 指針裝入S(堆棧)段寄存器
另外還對地址操作的3條指令功能進行了調整:
LXA 裝入有效地址
LDS 裝入D段寄存器
LES 裝入E段寄存器
5.標志處理指令組
標志處理指令中增加2條新指令:PUSHFD EFLAGS進棧POPFD EFLAGS出棧
另外,在邏輯移位指令組中,增加了雙位左移和雙位右移命令SHLD/SHRD等等。
(四)80486擴展的指令
80486指令系統和80386基本相同,但為支持Cache和多重處理,80486在80386指令系統的基礎上,又增加了如下幾條新指令。
它們是:
●BSWAP 在32位寄存器內交換字節順序。
●XADD 執行原子交換并把它加到存儲器操作數上,保留原值。
●CMPXCHG 用以存儲器為基礎的操作數執行原子比較和有條件的交換。
●INVD 使整個指令數據Cache無效。
●WBINVD 使數據Cache無效,通過二級Cache,寫回到臟Cache行。
●INVLPG 使TLB中的符號無效。
(五)Pentium擴展的指令1.Pentium擴展指令
Pentium指令系統包括了80486的全部指令又增加了5條新指令。它們是:CMPXCHG8B 算術類指令,8字節比較后交換RDMSR 讀模型專用寄存器WRMSR 寫模型專用寄存器RDTSC 讀時間標記計數器RSM 由系統管理方式返回
2.PentiumⅡ擴展指令
PentiumⅡ微處理器中由于集成了多媒體擴展技術(MMX),因而增加了57條MMX指令。MMX指令集簡介如下:
(1)算術運算指令
PADD[B,W,D] ;環繞加法[字節,字,雙字]
PADDS[B,W] ;飽和帶符號減法[字節,字]
PADDUS[B,W] ;飽和無符號減法[字節,字]
PSUB[B,W,D] ;環繞減法[字節,字,雙字]
PSUBS[B,W] ;飽和帶符號加法[字節,字]
PSUBUS[B,W] ;飽和無符號加法[字節,字]
PMULHW ;字高位緊縮乘法PMULLW ;字低位緊縮乘法
PMADDWD ;字緊縮乘法并累加結果
(2)比較指令
PCMPEO[B,W,D] ;相等緊縮比較[字節,字,雙字]
PCMPGT[B,W,D] ;大小緊縮比較[字節,字,雙字]
(3)轉換指令
PACKUSWB ;字緊縮為字節
PACKSS[WB,DW] ;緊縮字到字節,雙字到字
PUNPCKH[BW,WD,DQ] ;從MMX寄存器解壓(交*)高階字節、雙字、四字
PUNPCKL[BW,WD,DQ] ;從MMX寄存器解壓(交*)低階字節、雙字、四字
(4)邏輯指令
PAND ;按位AND
PANDN ;按位AND NOT
POR ;按位OR PXOR ;按位XOR
(5)移位指令
PSLL[W,D,Q] ;依據MMX寄存器中指定的數量或立即數值的緊縮左移邏輯操作[字,雙字,四字]
PSRL[W,D,Q] ;依據MMX寄存器中指定的數量或立即數值的緊縮右移邏輯操作[字,雙字,四字]
PSRA[W,D] ;依據MMX寄存器中指定的數量或立即數值的緊縮右移算術操作
(6)數據轉移指令
MOV[D,Q] ;移入MMX寄存器或移出MMX寄存器[雙字,四字]
(7)浮點和MMX狀態管理指令
EMMS ;清除MMX狀態
上述指令中,有的一條指令后帶[B,W,D],表示該指令支持多種數據類型,即支持字節(B)、字(W)、雙字(D)的操作。
3.PentiumⅢ擴展指令
PentiumⅢ為提高互聯網計算能力,又增加了71條稱為互聯網SSE(Streaming SIMDExˉtensions,直譯為數據流單指令多數據擴展)的指令和處理機序列號。它們是8條高速緩沖存儲器控制指令,50條SIMD浮點指令和12條多媒體指令。