80x86采用變字節(jié)的指令格式
	   
	   80x86采用變字節(jié)的指令格式,指令由1~16個字節(jié)組成。一條指令通常由6個字段組成,字段1為前綴字段,字段2~6為基本字段。下面將各個字段加以說明。
  1.前綴字段
  前綴字段用于修改指令操作的某些屬性,為可選字段。常用的前綴有以下五類。
 。1)段超越前綴:用于指明某個段寄存器取代指令中默認(rèn)的段寄存器。
  (2)操作數(shù)寬度前綴:用于改變當(dāng)前操作數(shù)的默認(rèn)寬度值。
 。3)地址寬度前綴:用于改變當(dāng)前地址的默認(rèn)寬度值。
  (4)重復(fù)前綴:用于重復(fù)串的操作。
 。5)總線鎖定前綴:用于產(chǎn)生LOCK信號,防止其他設(shè)備中斷CPU在總線上的操作。
  每個前綴的編碼為1個字節(jié),在一條指令前可同時使用多個指令前綴。不同前綴的前后順序是無關(guān)緊要的,但同類指令前綴用于同一指令前時,只有最后一個是有效的。當(dāng)指令前綴過多而使指令長度超過16字節(jié)時,會導(dǎo)致指令非法。
  2.操作碼字段(OP Code)
  它規(guī)定了指令的操作性質(zhì)。此字段不可省略。
  3.尋址方式字段(mod r/m和sib)
   此兩個字段稱為尋址方式說明符字段。mod r/m為主尋址字節(jié),而sib為第二尋址字節(jié)。mod r/m字節(jié)規(guī)定了操作數(shù)的尋址方式,包括操作數(shù)長 度、采用的尋址方式、操作數(shù)的存放位置及EA的計(jì)算方法;sib為比例-變址-基址字節(jié),它是否需要是由modr/m字節(jié)規(guī)定的尋址方式來決定的。一般訪 問存儲器的指令中都含有mod r/m字節(jié)。
  4.位移量字段(Displ)
  當(dāng)尋址方式中需要位移量時,指令中將出現(xiàn)此字段。其長度為1,2,4個字節(jié),通常用帶符號數(shù)(補(bǔ)碼)表示。
  5.立即數(shù)字段(Data)
  當(dāng)尋址方式是立即數(shù)尋址時需用此字段,其長度為l,2,4個字節(jié)。立即數(shù)字段總是該指令的最后字段。
  從上面可以看出,除操作碼字段為必選字段外,其他各字段都是可選字段,可根據(jù)不同的尋址方式選用。
	   
計(jì)算機(jī)學(xué)習(xí)推薦