锘??xml version="1.0" encoding="utf-8" standalone="yes"?>
鏍煎紡涓? MOV DST,SRC
鎵ц鐨勬搷浣?(DST)<-(SRC)
.PUSH榪涙爤鎸囦護
鏍煎紡涓?PUSH SRC
鎵ц鐨勬搷浣?(SP)<-(SP)-2
((SP)+1,(SP))<-(SRC)
.POP鍑烘爤鎸囦護
鏍煎紡涓?POP DST
鎵ц鐨勬搷浣?(DST)<-((SP+1),(SP))
(SP)<-(SP)+2
.XCHG 浜ゆ崲鎸囦護
鏍煎紡涓?XCHG OPR1,OPR2
鎵ц鐨勬搷浣?(OPR1)<-->(OPR2)
2.绱姞鍣ㄤ笓鐢ㄤ紶閫佹寚浠?br>IN(Input) 杈撳叆
OUT(Output) 杈撳嚭
XLAT(Translate) 鎹㈢爜
榪欑粍鎸囦護鍙檺浜庝嬌鐢ㄧ瘡鍔犲櫒AX鎴朅L浼犻佷俊鎭?
.IN 杈撳叆鎸囦護
闀挎牸寮忎負: IN AL,PORT(瀛楄妭)
IN AX,PORT(瀛?
鎵ц鐨勬搷浣? (AL)<-(PORT)(瀛楄妭)
(AX)<-(PORT+1,PORT)(瀛?
鐭牸寮忎負: IN AL,DX(瀛楄妭)
IN AX,DX(瀛?
鎵ц鐨勬搷浣? AL<-((DX))(瀛楄妭)
AX<-((DX)+1,DX)(瀛?
.OUT 杈撳嚭鎸囦護
闀挎牸寮忎負: OUT PORT,AL(瀛楄妭)
OUT PORT,AX(瀛?
鎵ц鐨勬搷浣? (PORT)<-(AL)(瀛楄妭)
(PORT+1,PORT)<-(AX)(瀛?
鐭牸寮忎負: OUT DX,AL(瀛楄妭)
OUT DX,AX(瀛?
鎵ц鐨勬搷浣? ((DX))<-(AL)(瀛楄妭)
((DX)+1,(DX))<-AX(瀛?
鍦↖BM-PC鏈洪噷,澶栭儴璁懼鏈澶氬彲鏈?5536涓狪/O绔彛,绔彛(鍗沖璁劇殑绔彛鍦板潃)涓?000~FFFFH.鍏朵腑鍓?56涓鍙?0~FFH)鍙互鐩存帴鍦ㄦ寚浠や腑鎸囧畾,榪欏氨鏄暱鏍煎紡涓殑PORT,姝ゆ椂鏈哄櫒鎸囦護鐢ㄤ簩涓瓧鑺傝〃紺?絎簩涓瓧鑺傚氨鏄鍙e彿.鎵浠ョ敤闀挎牸寮忔椂鍙互鍦ㄦ寚瀹氫腑鐩存帴鎸囧畾绔彛鍙?浣嗗彧闄愪簬鍓?56涓鍙?褰撶鍙e彿>=256鏃?鍙兘浣跨敤鐭牸寮?姝ゆ椂,蹇呴』鍏堟妸绔彛鍙鋒斁鍒癉X瀵勫瓨鍣ㄤ腑(绔彛鍙峰彲浠ヤ粠0000鍒?FFFFH),鐒跺悗鍐嶇敤IN鎴朞UT鎸囦護鏉?浼犻佷俊鎭?
.XLAT 鎹㈢爜鎸囦護
鏍煎紡涓? XLAT OPR
鎴? XLAT
鎵ц鐨勬搷浣?(AL)<-((BX)+(AL))
3.鏈夋晥鍦板潃閫佸瘎瀛樺櫒鎸囦護
LEA(Load effective address)鏈夋晥鍦板潃閫佸瘎瀛樺櫒
LDS(Load DS with Pointer)鎸囬拡閫佸瘎瀛樺櫒鍜孌S
LES(Load ES with Pointer)鎸囬拡閫佸瘎瀛樺櫒鍜孍S
.LEA 鏈夋晥鍦板潃閫佸瘎瀛樺櫒
鏍煎紡涓? LEA REG,SRC
鎵ц鐨勬搷浣?(REG)<-SRC
鎸囦護鎶婃簮鎿嶄綔鏁扮殑鏈夋晥鍦板潃閫佸埌鎸囧畾鐨勫瘎瀛樺櫒涓?
.LDS 鎸囬拡閫佸瘎瀛樺櫒鍜孌S鎸囦護
鏍煎紡涓? LDS REG,SRC
鎵ц鐨勬搷浣?(REG)<-(SRC)
(DS)<-(SRC+2)
鎶婃簮鎿嶄綔鏁版寚瀹氱殑4涓浉緇у瓧鑺傞佸埌鐢辨寚浠ゆ寚瀹氱殑瀵勫瓨鍣ㄥ強DS瀵勫瓨鍣ㄤ腑.璇ユ寚浠ゅ父鎸囧畾SI瀵勫瓨鍣?
.LES 鎸囬拡閫佸瘎瀛樺櫒鍜孍S鎸囦護
鏍煎紡涓? LES REG,SRC
鎵ц鐨勬搷浣? (REG)<-(SRC)
(ES)<-(SRC+2)
鎶婃簮鎿嶄綔鏁版寚瀹氱殑4涓浉緇у瓧鑺傞佸埌鐢辨寚浠ゆ寚瀹氱殑瀵勫瓨鍣ㄥ強ES瀵勫瓨鍣ㄤ腑.璇ユ寚浠ゅ父鎸囧畾DI瀵勫瓨鍣?
4.鏍囧織瀵勫瓨鍣ㄤ紶閫佹寚浠?br>LAHF(Load AH with flags)鏍囧織閫丄H
SAHF(store AH into flags)AH閫佹爣蹇楀瘎瀛樺櫒
PUSHF(push the flags) 鏍囧織榪涙爤
POPF(pop the flags) 鏍囧織鍑烘爤
.LAHF 鏍囧織閫丄H
鏍煎紡涓? LAHF
鎵ц鐨勬搷浣?(AH)<-(PWS鐨勪綆瀛楄妭)
.SAHF AH閫佹爣蹇楀瘎瀛樺櫒
鏍煎紡涓? SAHF
鎵ц鐨勬搷浣?(PWS鐨勪綆瀛楄妭)<-(AH)
.PUSHF 鏍囧織榪涙爤
鏍煎紡涓? PUSHF
鎵ц鐨勬搷浣?(SP)<-(SP)-2
((SP)+1,(SP))<-(PSW)
.POPF 鏍囧織鍑烘爤
鏍煎紡涓? POPF
鎵ц鐨勬搷浣?(PWS)<-((SP)+1,(SP))
(SP)<-(SP+2)
浜屻佺畻鏈寚浠?br>1.鍔犳硶鎸囦護
ADD(add)鍔犳硶
ADC(add with carry)甯﹁繘浣嶅姞娉?br>INC(increment)鍔?
.ADD 鍔犳硶鎸囦護
鏍煎紡: ADD DST,SRC
鎵ц鐨勬搷浣?(DST)<-(SRC)+(DST)
.ADC 甯﹁繘浣嶅姞娉曟寚浠?br>鏍煎紡: ADC DST,SRC
鎵ц鐨勬搷浣?(DST)<-(SRC)+(DST)+CF
.ADD 鍔?鎸囦護
鏍煎紡: INC OPR
鎵ц鐨勬搷浣?(OPR)<-(OPR)+1
2.鍑忔硶鎸囦護
SUB(subtract)鍑忔硶
SBB(subtract with borrow)甯﹀熶綅鍑忔硶
DEC(Decrement)鍑?
NEG(Negate)姹傝ˉ
CMP(Compare)姣旇緝
.SUB 鍑忔硶鎸囦護
鏍煎紡: SUB DST,SRC
鎵ц鐨勬搷浣?(DST)<-(DST)-(SRC)
.SBB 甯﹀熶綅鍑忔硶鎸囦護
鏍煎紡: SBB DST,SRC
鎵ц鐨勬搷浣?(DST)<-(DST)-(SRC)-CF
.DEC 鍑?鎸囦護
鏍煎紡: DEC OPR
鎵ц鐨勬搷浣?(OPR)<-(OPR)-1
.NEG 姹傝ˉ鎸囦護
鏍煎紡: NEG OPR
鎵ц鐨勬搷浣?(OPR)<- -(OPR)
.CMP 姣旇緝鎸囦護
鏍煎紡: CMP OPR1,OPR2
鎵ц鐨勬搷浣?(OPR1)-(OPR2)
璇ユ寚浠や笌SUB鎸囦護涓鏍鋒墽琛屽噺娉曟搷浣?浣嗕笉淇濆瓨緇撴灉,鍙槸鏍規嵁緇撴灉璁劇疆鏉′歡鏍囧織瑗垮崐鐞?
3.涔樻硶鎸囦護
MUL(Unsigned Multiple)鏃犵鍙鋒暟涔樻硶
IMUL(Signed Multiple)甯︾鍙鋒暟涔樻硶
.MUL 鏃犵鍙鋒暟涔樻硶鎸囦護
鏍煎紡: MUL SRC
鎵ц鐨勬搷浣?
瀛楄妭鎿嶄綔鏁?(AX)<-(AL)*(SRC)
瀛楁搷浣滄暟:(DX,AX)<-(AX)*(SRC)
.IMUL 甯︾鍙鋒暟涔樻硶鎸囦護
鏍煎紡: IMUL SRC
鎵ц鐨勬搷浣?涓嶮UL鐩稿悓,浣嗗繀欏繪槸甯︾鍙鋒暟,鑰孧UL鏄棤絎﹀彿鏁?
4.闄ゆ硶鎸囦護
DIV(Unsigned divide)鏃犵鍙鋒暟闄ゆ硶
IDIV(Signed divide)甯︾鍙鋒暟闄ゆ硶
CBW(Convert byte to word)瀛楄妭杞崲涓哄瓧
CWD(Contert word to double word)瀛楄漿鎹負鍙屽瓧
.DIV 鏃犵鍙鋒暟闄ゆ硶鎸囦護
鏍煎紡: DIV SRC
鎵ц鐨勬搷浣?
瀛楄妭鎿嶄綔:(AL)<-(AX)/(SRC)鐨勫晢
(AH)<-(AX)/(SRC)鐨勪綑鏁?br> 瀛楁搷浣? (AX)<-(DX,AX)/(SRC)鐨勫晢
(AX)<-(DX,AX)/(SRC)鐨勪綑鏁?br>.IDIV 甯︾鍙鋒暟闄ゆ硶鎸囦護
鏍煎紡: DIV SRC
鎵ц鐨勬搷浣?涓嶥IV鐩稿悓,浣嗘搷浣滄暟蹇呴』鏄甫絎﹀彿鏁?鍟嗗拰浣欐暟涔熷潎涓哄甫絎﹀彿鏁?涓斾綑鏁扮殑絎﹀彿涓庤闄ゆ暟鐨勭鍙風浉鍚?
.CBW 瀛楄妭杞崲涓哄瓧鎸囦護
鏍煎紡: CBW
鎵ц鐨勬搷浣?AL鐨勫唴瀹圭鍙鋒墿灞曞埌AH.鍗沖鏋?AL)鐨勬渶楂樻湁鏁堜綅涓?,鍒?AH)=00;濡?AL)鐨勬渶楂樻湁鏁堜綅涓?,鍒?AH)=0FFH
.CWD 瀛楄漿鎹負鍙屽瓧鎸囦護
鏍煎紡: CWD
鎵ц鐨勬搷浣?AX鐨勫唴瀹圭鍙鋒墿灞曞埌DX.鍗沖(AX)鐨勬渶楂樻湁鏁堜綅涓?,鍒?DX)=0;鍚﹀垯(DX)=0FFFFH.
榪欎袱鏉℃寚浠ら兘涓嶅獎鍝嶆潯浠剁爜.
涓夈侀昏緫鎸囦護
1.閫昏緫榪愮畻鎸囦護
AND(and) 閫昏緫涓?br>OR(or) 閫昏緫鎴?br>NOT(not) 閫昏緫闈?br>XOR(exclusive or)寮傛垨
TEST(test) 嫻嬭瘯
.AND 閫昏緫涓庢寚浠?br>鏍煎紡: AND DST,SRC
鎵ц鐨勬搷浣?(DST)<-(DST)^(SRC)
.OR 閫昏緫鎴栨寚浠?br>鏍煎紡: OR DST,SRC
鎵ц鐨勬搷浣?(DST)<-(DST)V(SRC)
.NOT 閫昏緫闈炴寚浠?br>鏍煎紡: NOT OPR
鎵ц鐨勬搷浣?(OPR)<-(OPR)
.XOR 寮傛垨鎸囦護
鏍煎紡: XOR DST,SRC
鎵ц鐨勬搷浣?(DST)<-(DST)V(SRC)
.TEST 嫻嬭瘯鎸囦護
鏍煎紡: TEST OPR1,OPR2
鎵ц鐨勬搷浣?(DST)^(SRC)
涓や釜鎿嶄綔鏁扮浉涓庣殑緇撴灉涓嶄繚瀛?鍙牴鎹叾鐗瑰緛緗潯浠剁爜
2.縐諱綅鎸囦護
SHL(shift logical left) 閫昏緫宸︾Щ
SAL(shift arithmetic left) 綆楁湳宸︾Щ
SHR(shift logical right) 閫昏緫鍙崇Щ
SAR(shift arithmetic right) 綆楁湳鍙崇Щ
ROL(Rotate left) 寰幆宸︾Щ
ROR(Rotate right) 寰幆鍙崇Щ
RCL(Rotate left through carry) 甯﹁繘浣嶅驚鐜乏縐?br>RCR(Rotate right through carry) 甯﹁繘浣嶅驚鐜彸縐?br>鏍煎紡: SHL OPR,CNT(鍏朵綑鐨勭被浼?
鍏朵腑OPR鍙互鏄櫎绔嬪嵆鏁頒互澶栫殑浠諱綍瀵誨潃鏂瑰紡.縐諱綅嬈℃暟鐢盋NT鍐沖畾,CNT鍙互鏄?鎴朇L.
寰幆縐諱綅鎸囦護鍙互鏀瑰彉鎿嶄綔鏁頒腑鎵鏈変綅鐨勪綅緗?縐諱綅鎸囦護鍒欏父甯哥敤鏉ュ仛涔樹互2闄や互2鎿嶄綔.鍏朵腑綆楁湳縐諱綅鎸囦護閫傜敤浜庡甫絎﹀彿鏁拌繍綆?SAL鐢ㄦ潵涔?,SAR鐢ㄦ潵闄や互2;鑰岄昏緫縐諱綅鎸囦護鍒欑敤鏉ユ棤絎﹀彿鏁拌繍綆?SHL鐢ㄦ潵涔?,SHR鐢ㄦ潵闄や互2.
鍥涖佷覆澶勭悊鎸囦護
1.涓嶳EP鐩擱厤鍚堝伐浣滅殑MOVS,STOS鍜孡ODS鎸囦護
.REP閲嶅涓叉搷浣滅洿鍒?CX)=0涓轟笂
鏍煎紡: REP string primitive
鍏朵腑String Primitive鍙負MOVS,LODS鎴朣TOS鎸囦護
鎵ц鐨勬搷浣?
1)濡?CX)=0鍒欓鍑篟EP,鍚﹀垯寰涓嬫墽琛?
2)(CX)<-(CX)-1
3)鎵ц鍏朵腑鐨勪覆鎿嶄綔
4)閲嶅1)~3)
.MOVS 涓蹭紶閫佹寚浠?br>鏍煎紡:鍙湁涓夌
MOVS DST,SRC
MOVSB(瀛楄妭)
MOVSW(瀛?
鍏朵腑絎簩銆佷笁縐嶆牸寮忔槑紜湴娉ㄦ槑鏄紶閫佸瓧鑺傛垨瀛楋紝絎竴縐嶆牸寮忓垯搴斿湪鎿嶄綔鏁頒腑琛ㄦ槑鏄瓧榪樻槸瀛楄妭鎿嶄綔錛屼緥濡傦細
MOVS ES:BYTE PTR[DI],DS:[SI]
鎵ц鐨勬搷浣?
1)((DI))<-((SI))
2)瀛楄妭鎿嶄綔:
(SI)<-(SI)+(鎴?)1,(DI)<-(DI)+(鎴?)1
褰撴柟鍚戞爣蹇桪F=0鏃剁敤+,褰撴柟鍚戞爣蹇桪F=1鏃剁敤-
3)瀛楁搷浣?
(SI)<-(SI)+(鎴?)2,(DI)<-(DI)+(鎴?)2
褰撴柟鍚戞爣蹇桪F=0鏃剁敤+,褰撴柟鍚戞爣蹇桪F=1鏃剁敤-
璇ユ寚浠や笉褰卞搷鏉′歡鐮?
.CLD(Clear direction flag)璇ユ寚浠や嬌DF=0,鍦ㄦ墽琛屼覆鎿嶄綔鎸囦護鏃跺彲浣垮湴鍧鑷姩澧為噺;
.STD(Set direction flag)璇ユ寚浠や嬌DF=1,鍦ㄦ墽琛屼覆鎿嶄綔鎸囦護鏃跺彲浣垮湴鍧鑷姩鍑忛噺.
.STOS 瀛樺叆涓叉寚浠?br>鏍煎紡: STOS DST
STOSB(瀛楄妭)
STOSW(瀛?
鎵ц鐨勬搷浣?
瀛楄妭鎿嶄綔:((DI))<-(AL),(DI)<-(DI)+-1
瀛楁搷浣? ((DI))<-(AX),(DI)<-(DI)+-2
璇ユ寚浠ゆ妸AL鎴朅X鐨勫唴瀹瑰瓨鍏ョ敱(DI)鎸囧畾鐨勯檮鍔犳鐨勬煇鍗曞厓涓?騫舵牴鎹瓺F鐨勫煎強鏁版嵁綾誨瀷淇敼DI鐨勫唴瀹?褰撳畠涓嶳EP鑱旂敤鏃?鍙妸AL鎴朅X鐨勫唴瀹瑰瓨鍏ヤ竴涓暱搴︿負(CX)鐨勭紦鍐插尯涓?
.LODS 浠庝覆鍙栨寚浠?br>鏍煎紡: LODS SRC
LODSB
LODSW
鎵ц鐨勬搷浣?
瀛楄妭鎿嶄綔:(AL)<-((SI)),(SI)<-(SI)+-1
瀛楁搷浣? (AX)<-((SI)),(SI)<-(SI)+-2
璇ユ寚浠ゆ妸鐢?SI)鎸囧畾鐨勬暟鎹涓煇鍗曞厓鐨勫唴瀹歸佸埌AL鎴朅X涓?騫舵牴鎹柟鍚戞爣蹇楀強鏁版嵁綾誨瀷淇敼SI鐨勫唴瀹?鎸囦護鍏佽浣跨敤孌佃法瓚婂墠緙鏉ユ寚瀹氶潪鏁版嵁孌電殑瀛樺偍鍖?璇ユ寚浠や篃涓嶅獎鍝嶆潯浠剁爜.
涓鑸鏉?璇ユ寚浠や笉鍜孯EP鑱旂敤.鏈夋椂緙撳啿鍖轟腑鐨勪竴涓插瓧絎﹂渶瑕侀愭鍙栧嚭鏉ユ祴璇曟椂,鍙嬌鐢ㄦ湰鎸囦護.
2.涓嶳EPE/REPZ鍜孯EPNZ/REPNE鑱斿悎宸ヤ綔鐨凜MPS鍜孲CAS鎸囦護
.REPE/REPZ 褰撶浉絳?涓洪浂鏃墮噸澶嶄覆鎿嶄綔
鏍煎紡: REPE(鎴朢EPZ) String Primitive
鍏朵腑String Primitive鍙負CMPS鎴朣CAS鎸囦護.
鎵ц鐨勬搷浣?
1)濡?CX)=0鎴朲F=0(鍗蟲煇嬈℃瘮杈冪殑緇撴灉涓や釜鎿嶄綔鏁頒笉絳?鏃墮鍑?鍚﹀垯寰涓嬫墽琛?br>2)(CX)<-(CX)-1
3)鎵ц鍏跺悗鐨勪覆鎸囦護
4)閲嶅1)~3)
.REPNE/REPNZ 褰撲笉鐩哥瓑/涓嶄負闆舵椂閲嶅涓叉搷浣?br>鏍煎紡: REPNE(鎴朢EPNZ) String Primitive
鍏朵腑String Primitive鍙負CMPS鎴朣CAS鎸囦護
鎵ц鐨勬搷浣?
闄ら鍑烘潯浠?CX=0)鎴朲F=1澶?鍏朵粬鎿嶄綔涓嶳EPE瀹屽叏鐩稿悓.
.CMPS 涓叉瘮杈冩寚浠?br>鏍煎紡: CMP SRC,DST
CMPSB
CMPSW
鎵ц鐨勬搷浣?
1)((SI))-((DI))
2)瀛楄妭鎿嶄綔:(SI)<-(SI)+-1,(DI)<-(DI)+-1
瀛楁搷浣? (SI)<-(SI)+-2,(DI)<-(DI)+-2
鎸囦護鎶婄敱(SI)鎸囧悜鐨勬暟鎹涓殑涓涓瓧(鎴栧瓧鑺?涓庣敱(DI)鎸囧悜鐨勯檮鍔犳涓殑涓涓瓧(鎴栧瓧鑺?鐩稿噺,浣嗕笉淇濆瓨緇撴灉,鍙牴鎹粨鏋滆緗潯浠剁爜,鎸囦護鐨勫叾瀹冪壒鎬у拰MOVS鎸囦護鐨勮瀹氱浉鍚?
.SCAS 涓叉壂鎻忔寚浠?br>鏍煎紡: SCAS DST
SCASB
SCASW
鎵ц鐨勬搷浣?
瀛楄妭鎿嶄綔:(AL)-((DI)),(DI)<-(DI)+-1
瀛楁搷浣? (AL)-((DI)),(DI)<-(DI)+-2
璇ユ寚浠ゆ妸AL(鎴朅X)鐨勫唴瀹逛笌鐢?DI)鎸囧畾鐨勫湪闄勫姞孌典腑鐨勪竴涓瓧鑺?鎴栧瓧)榪涜姣旇緝,騫朵笉淇濆瓨緇撴灉,鍙牴鎹粨鏋滅疆鏉′歡鐮?鎸囦護鐨勫叾浠栫壒鎬у拰MOVS鐨勮瀹氱浉鍚?
浜斻佹帶鍒惰漿縐繪寚浠?br> 1.鏃犳潯浠惰漿縐繪寚浠?br>.JMP(jmp) 璺寵漿鎸囦護
1)孌靛唴鐩存帴鐭漿縐?br>鏍煎紡:JMP SHORT OPR
鎵ц鐨勬搷浣?(IP)<-(IP)+8浣嶄綅縐婚噺
2)孌靛唴鐩存帴榪戣漿縐?br>鏍煎紡:JMP NEAR PTR OPR
鎵ц鐨勬搷浣?(IP)<-(IP)+16浣嶄綅縐婚噺
3)孌靛唴闂存帴杞Щ
鏍煎紡:JMP WORD PTR OPR
鎵ц鐨勬搷浣?(IP)<-(EA)
4)孌甸棿鐩存帴(榪?杞Щ
鏍煎紡:JMP FAR PTR OPR
鎵ц鐨勬搷浣?(IP)<-OPR鐨勬鍐呭亸縐誨湴鍧
(CS)<-OPR鎵鍦ㄦ鐨勬鍦板潃
5)孌甸棿闂存帴杞Щ
鏍煎紡:JMP DWORD PTR OPR
鎵ц鐨勬搷浣?(IP)<-(EA)
(CS)<-(EA+2)
2.鏉′歡杞Щ鎸囦護
1)鏍規嵁鍗曚釜鏉′歡鏍囧織鐨勮緗儏鍐佃漿縐?br>.JZ(鎴朖E)(Jump if zero,or equal) 緇撴灉涓洪浂(鎴栫浉絳?鍒欒漿縐?br>鏍煎紡:JE(鎴朖Z) OPR
嫻嬭瘯鏉′歡:ZF=1
.JNZ(鎴朖NE)(Jump if not zero,or not equal) 緇撴灉涓嶄負闆?鎴栦笉鐩哥瓑)鍒欒漿縐?br>鏍煎紡:JNZ(鎴朖NE) OPR
嫻嬭瘯鏉′歡:ZF=0
.JS(Jump if sign) 緇撴灉涓鴻礋鍒欒漿縐?br>鏍煎紡: JS OPR
嫻嬭瘯鏉′歡:SF=1
.JNS(Jump if not sign) 緇撴灉涓烘鍒欒漿縐?br>鏍煎紡:JNS OPR
嫻嬭瘯鏉′歡:SF=0
.JO(Jump if overflow) 婧㈠嚭鍒欒漿縐?br>鏍煎紡: JO OPR
嫻嬭瘯鏉′歡:OF=1
.JNO(Jump if not overflow) 涓嶆孩鍑哄垯杞Щ
鏍煎紡: JNO OPR
嫻嬭瘯鏉′歡:OF=0
.JP(鎴朖PE)(Jump if parity,or parity even) 濂囧伓浣嶄負1鍒欒漿縐?br>鏍煎紡: JP OPR
嫻嬭瘯鏉′歡:PF=1
.JNP(鎴朖PO)(Jump if not parity,or parity odd) 濂囧伓浣嶄負0鍒欒漿縐?br>鏍煎紡: JNP(鎴朖PO) OPR
嫻嬭瘯鏉′歡:PF=0
.JB(鎴朖NAE,JC)(Jump if below,or not above or equal,or carry) 浣庝簬,鎴栬呬笉楂樹簬鎴栫瓑浜?鎴栬繘浣嶄綅涓?鍒欒漿縐?br>鏍煎紡:JB(鎴朖NAE,JC) OPR
嫻嬭瘯鏉′歡:CF=1
.JNB(鎴朖AE,JNC)(Jump if not below,or above or equal,or not carry) 涓嶄綆浜?鎴栬呴珮浜庢垨鑰呯瓑浜?鎴栬繘浣嶄綅涓?鍒欒漿縐?br>鏍煎紡:JNB(鎴朖AE,JNC) OPR
嫻嬭瘯鏉′歡:CF=0
2)姣旇緝涓や釜鏃犵鍙鋒暟,騫舵牴鎹瘮杈冪殑緇撴灉杞Щ
.JB(鎴朖NAE,JC)
鏍煎紡:鍚屼笂
.JNB(鎴朖AE,JNC)
鏍煎紡:鍚屼笂
.JBE(鎴朖NA)(Jump if below or equal,or not above) 浣庝簬鎴栫瓑浜?鎴栦笉楂樹簬鍒欒漿縐?br>鏍煎紡:JBE(鎴朖NA) OPR
嫻嬭瘯鏉′歡:CFVZF=1
.JNBE(鎴朖A)(Jump if not below or equal,or above) 涓嶄綆浜庢垨絳変簬,鎴栬呴珮浜庡垯杞Щ
鏍煎紡:JNBE(鎴朖A) OPR
嫻嬭瘯鏉′歡:CFVZF=0
3)姣旇緝涓や釜甯︾鍙鋒暟,騫舵牴鎹瘮杈冪殑緇撴灉杞Щ
.JL(鎴朙NGE)(Jump if less,or not greater or equal) 灝忎簬,鎴栬呬笉澶т簬鎴栬呯瓑浜庡垯杞Щ
鏍煎紡:JL(鎴朖NGE) OPR
嫻嬭瘯鏉′歡:SFVOF=1
.JNL(鎴朖GE)(Jump if not less,or greater or equal)涓嶅皬浜?鎴栬呭ぇ浜庢垨鑰呯瓑浜庡垯杞Щ
鏍煎紡:JNL(鎴朖GE) OPR
嫻嬭瘯鏉′歡:SFVOF=0
.JLE(鎴朖NG)(Jump if less or equal,or not greater) 灝忎簬鎴栫瓑浜?鎴栬呬笉澶т簬鍒欒漿縐?br>鏍煎紡:JLE(鎴朖NG) OPR
嫻嬭瘯鏉′歡:(SFVOF)VZF=1
.JNLE(鎴朖G)(Jump if not less or equal,or greater) 涓嶅皬浜庢垨絳変簬,鎴栬呭ぇ浜庡垯杞Щ
鏍煎紡:JNLE(鎴朖G) OPR
嫻嬭瘯鏉′歡:(SFVOF)VZF=0
4)嫻嬭瘯CX鐨勫間負0鍒欒漿縐繪寚浠?br>.JCXZ(Jump if CX register is zero) CX瀵勫瓨鍣ㄧ殑鍐呭涓洪浂鍒欒漿縐?br>鏍煎紡:JCXZ OPR
嫻嬭瘯鏉′歡:(CX)=0
娉?鏉′歡杞Щ鍏ㄤ負8浣嶇煭璺?
3.寰幆鎸囦護
.LOOP 寰幆鎸囦護
鏍煎紡: LOOP OPR
嫻嬭瘯鏉′歡:(CX)<>0
.LOOPZ/LOOPE 褰撲負闆舵垨鐩哥瓑鏃跺驚鐜寚浠?br>鏍煎紡: LOOPZ(鎴朙OOPE) OPR
嫻嬭瘯鏉′歡:(CX)<>0涓擹F=1
.LOOPNZ/LOOPNE 褰撲笉涓洪浂鎴栦笉鐩哥瓑鏃跺驚鐜寚浠?br>鏍煎紡: LOOPNZ(鎴朙OOPNE) OPR
嫻嬭瘯鏉′歡:(CX)<>0涓擹F=0
榪欎笁鏉℃寚浠ょ殑姝ラ鏄?
1)(CX)<-(CX)-1
2)媯鏌ユ槸鍚︽弧瓚蟲祴璇曟潯浠?濡傛弧瓚沖垯(IP)<-(IP)+D8鐨勭鍙鋒墿鍏?
4.瀛愮▼搴?br>.CALL璋冪敤鎸囦護
.RET榪斿洖鎸囦護
5.涓柇
.INT鎸囦護
鏍煎紡: INT TYPE
鎴?nbsp; INT
鎵ц鐨勬搷浣?(SP)<-(SP)-2
((SP)+1,(SP))<-(PSW)
(SP)<-(SP)-2
((SP)+1,(SP))<-(CS)
(SP)<-(SP)-2
((SP)+1,(SP))<-(IP)
(IP)<-(TYPE*4)
(CS)<-(TYPE*4+2)
.INTO 鑻ユ孩鍑哄垯涓柇
鎵ц鐨勬搷浣?鑻F=1鍒?
(SP)<-(SP)-2
((SP)+1,(SP))<-(PSW)
(SP)<-(SP)-2
((SP)+1,(SP))<-(CS)
(SP)<-(SP)-2
((SP)+1,(SP))<-(IP)
(IP)<-(10H)
(CS)<-(12H)
.IRET 浠庝腑鏂繑鍥炴寚浠?br>鏍煎紡: IRET
鎵ц鐨勬搷浣?(IP)<-((SP)+1,(SP))
(SP)<-(SP)+2
(CS)<-((SP)+1,(SP))
(SP)<-(SP)+2
(PSW)<-((SP)+1,(SP))
(SP)<-(SP)+2
鍏佸鐞嗘満鎺у埗鎸囦護
1.鏍囧織澶勭悊鎸囦護
.CLC榪涗綅浣嶇疆0鎸囦護(Clear carry)CF<-0
.CMC榪涗綅浣嶆眰鍙嶆寚浠?Complement carry)CF<-CF
.STC榪涗綅浣嶇疆1鎸囦護(Set carry)CF<-1
.CLD鏂瑰悜鏍囧織緗?鎸囦護(Clear direction)DF<-0
.STD鏂瑰悜鏍囧織緗?鎸囦護(Set direction)DF<-1
.CLI涓柇鏍囧織緗?鎸囦護(Clear interrupt)IF<-0
.STI涓柇鏍囧織緗?鎸囦護(Set interrupt)IF<-0
2.鍏朵粬澶勭悊鏈烘帶鍒舵寚浠?br>NOP(No Opreation) 鏃犳搷浣?br>HLT(Halt) 鍋滄満
WAIT(Wait) 絳夊緟
ESC(Escape) 鎹㈢爜
LOCK(Lock) 灝侀攣
榪欎簺鎸囦護鍙互鎺у埗澶勭悊鏈虹姸鎬?榪欎滑閮戒笉褰卞搷鏉′歡鐮?
.NOP 鏃犳搷浣滄寚浠?br> 璇ユ寚浠や笉鎵ц浠諱綍鎿嶄綔,鍏舵満鍣ㄧ爜鍗犳湁涓涓瓧鑺?鍦ㄨ皟璇曠▼搴忔椂寰寰鐢ㄨ繖鏉℃寚浠ゅ崰鏈変竴瀹氱殑瀛樺偍鍗曞厓,浠ヤ究鍦ㄦ寮忚繍琛屾椂鐢ㄥ叾浠栨寚浠ゅ彇浠?
.HLT鍋滄満鎸囦護
璇ユ寚浠ゅ彲浣挎満鍣ㄦ殏鍋滃伐浣?浣垮鐞嗘満澶勪簬鍋滄満鐘舵佷互渚跨瓑寰呬竴嬈″閮ㄤ腑鏂埌鏉?涓柇緇撴潫鍚庡彲緇х畫鎵ц涓嬮潰鐨勭▼搴?
.WAIT絳夊緟鎸囦護
璇ユ寚浠や嬌澶勭悊鏈哄浜庣┖杞姸鎬?瀹冧篃鍙互鐢ㄦ潵絳夊緟澶栭儴涓柇鐨勫彂鐢?浣嗕腑鏂粨鏉熷悗浠嶈繑鍥濿AIT鎸囦護緇х畫寰瘋.
.ESC鎹㈢爜鎸囦護
鏍煎紡ESC mem
鍏朵腑mem鎸囧嚭涓涓瓨鍌ㄥ崟鍏?ESC鎸囦護鎶婅瀛樺偍鍗曞厓鐨勫唴瀹歸佸埌鏁版嵁鎬葷嚎鍘?褰撶劧ESC鎸囦護涓嶅厑璁鎬嬌鐢ㄧ珛鍗蟲暟鍜屽瘎瀛樺櫒瀵誨潃鏂瑰紡.榪欐潯鎸囦護鍦ㄤ嬌鐢ㄥ崗澶勭悊鏈?Coprocessor)鎵ц鏌愪簺鎿嶄綔鏃?鍙粠瀛樺偍鍣ㄦ寚寰楁寚浠ゆ垨鎿嶄綔鏁?鍗忓鐞嗘満(濡?087)鍒欐槸涓轟簡鎻愰珮閫熷害鑰屽彲浠ラ夐厤鐨勭‖浠?
.LOCK灝侀攣鎸囦護
璇ユ寚浠ゆ槸涓縐嶅墠緙,瀹冨彲涓庡叾浠栨寚浠よ仈鍚?鐢ㄦ潵緇存寔鎬葷嚎鐨勯攣瀛樹俊鍙風洿鍒頒笌鍏惰仈鍚堢殑鎸囦護鎵ц瀹屼負姝?褰揅PU涓庡叾浠栧鐞嗘満鍗忓悓宸ヤ綔鏃?璇ユ寚浠ゅ彲閬垮厤鐮村潖鏈夌敤淇℃伅.
姹囩紪鎸囦護澶у叏
涓銆佹暟鎹紶杈撴寚浠?
鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹
瀹冧滑鍦ㄥ瓨璐櫒鍜屽瘎瀛樺櫒銆佸瘎瀛樺櫒鍜岃緭鍏ヨ緭鍑虹鍙d箣闂翠紶閫佹暟鎹? 姹囩紪鎸囦護澶у叏
1. 閫氱敤鏁版嵁浼犻佹寚浠?
MOV 浼犻佸瓧鎴栧瓧鑺?
MOVSX 鍏堢鍙鋒墿灞?鍐嶄紶閫?
MOVZX 鍏堥浂鎵╁睍,鍐嶄紶閫?
PUSH 鎶婂瓧鍘嬪叆鍫嗘爤.
POP 鎶婂瓧寮瑰嚭鍫嗘爤.
PUSHA 鎶夾X,CX,DX,BX,SP,BP,SI,DI渚濇鍘嬪叆鍫嗘爤.
POPA 鎶奃I,SI,BP,SP,BX,DX,CX,AX渚濇寮瑰嚭鍫嗘爤.
PUSHAD 鎶奅AX,ECX,EDX,EBX,ESP,EBP,ESI,EDI渚濇鍘嬪叆鍫嗘爤.
POPAD 鎶奅DI,ESI,EBP,ESP,EBX,EDX,ECX,EAX渚濇寮瑰嚭鍫嗘爤.
BSWAP 浜ゆ崲32浣嶅瘎瀛樺櫒閲屽瓧鑺傜殑欏哄簭
XCHG 浜ゆ崲瀛楁垨瀛楄妭.( 鑷沖皯鏈変竴涓搷浣滄暟涓哄瘎瀛樺櫒,孌靛瘎瀛樺櫒涓嶅彲浣滀負鎿嶄綔鏁?
CMPXCHG 姣旇緝騫朵氦鎹㈡搷浣滄暟.( 絎簩涓搷浣滄暟蹇呴』涓虹瘡鍔犲櫒AL/AX/EAX )
XADD 鍏堜氦鎹㈠啀绱姞.( 緇撴灉鍦ㄧ涓涓搷浣滄暟閲?)
XLAT 瀛楄妭鏌ヨ〃杞崲.
鈹鈹 BX 鎸囧悜涓寮?256 瀛楄妭鐨勮〃鐨勮搗鐐? AL 涓鴻〃鐨勭儲寮曞?(0-255,鍗?-FFH); 榪斿洖 AL 涓烘煡琛ㄧ粨鏋? ( [BX+AL]->AL )
2. 杈撳叆杈撳嚭绔彛浼犻佹寚浠?
IN I/O绔彛杈撳叆. ( 璇硶: IN 绱姞鍣? {绔彛鍙封攤DX} )
OUT I/O绔彛杈撳嚭. ( 璇硶: OUT {绔彛鍙封攤DX},绱姞鍣?)
杈撳叆杈撳嚭绔彛鐢辯珛鍗蟲柟寮忔寚瀹氭椂, 鍏惰寖鍥存槸 0-255; 鐢卞瘎瀛樺櫒 DX 鎸囧畾鏃?
鍏惰寖鍥存槸 0-65535.
3. 鐩殑鍦板潃浼犻佹寚浠?
LEA 瑁呭叆鏈夋晥鍦板潃.
渚? LEA DX,string ;鎶婂亸縐誨湴鍧瀛樺埌DX.
LDS 浼犻佺洰鏍囨寚閽?鎶婃寚閽堝唴瀹硅鍏S.
渚? LDS SI,string ;鎶婃鍦板潃:鍋忕Щ鍦板潃瀛樺埌DS:SI.
LES 浼犻佺洰鏍囨寚閽?鎶婃寚閽堝唴瀹硅鍏S.
渚? LES DI,string ;鎶婃鍦板潃:鍋忕Щ鍦板潃瀛樺埌ES:DI.
LFS 浼犻佺洰鏍囨寚閽?鎶婃寚閽堝唴瀹硅鍏S.
渚? LFS DI,string ;鎶婃鍦板潃:鍋忕Щ鍦板潃瀛樺埌FS:DI.
LGS 浼犻佺洰鏍囨寚閽?鎶婃寚閽堝唴瀹硅鍏S.
渚? LGS DI,string ;鎶婃鍦板潃:鍋忕Щ鍦板潃瀛樺埌GS:DI.
LSS 浼犻佺洰鏍囨寚閽?鎶婃寚閽堝唴瀹硅鍏S.
渚? LSS DI,string ;鎶婃鍦板潃:鍋忕Щ鍦板潃瀛樺埌SS:DI.
4. 鏍囧織浼犻佹寚浠?
LAHF 鏍囧織瀵勫瓨鍣ㄤ紶閫?鎶婃爣蹇楄鍏H.
SAHF 鏍囧織瀵勫瓨鍣ㄤ紶閫?鎶夾H鍐呭瑁呭叆鏍囧織瀵勫瓨鍣?
PUSHF 鏍囧織鍏ユ爤.
POPF 鏍囧織鍑烘爤.
PUSHD 32浣嶆爣蹇楀叆鏍?
POPD 32浣嶆爣蹇楀嚭鏍?
浜屻佺畻鏈繍綆楁寚浠?
鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹
ADD 鍔犳硶.
ADC 甯﹁繘浣嶅姞娉?
INC 鍔?1.
AAA 鍔犳硶鐨凙SCII鐮佽皟鏁?
DAA 鍔犳硶鐨勫崄榪涘埗璋冩暣.
SUB 鍑忔硶.
SBB 甯﹀熶綅鍑忔硶.
DEC 鍑?1.
NEC 姹傚弽(浠?0 鍑忎箣).
CMP 姣旇緝.(涓ゆ搷浣滄暟浣滃噺娉?浠呬慨鏀規爣蹇椾綅,涓嶅洖閫佺粨鏋?.
AAS 鍑忔硶鐨凙SCII鐮佽皟鏁?
DAS 鍑忔硶鐨勫崄榪涘埗璋冩暣.
MUL 鏃犵鍙蜂箻娉?
IMUL 鏁存暟涔樻硶.
浠ヤ笂涓ゆ潯,緇撴灉鍥為丄H鍜孉L(瀛楄妭榪愮畻),鎴朌X鍜孉X(瀛楄繍綆?,
AAM 涔樻硶鐨凙SCII鐮佽皟鏁?
DIV 鏃犵鍙烽櫎娉?
IDIV 鏁存暟闄ゆ硶.
浠ヤ笂涓ゆ潯,緇撴灉鍥為?
鍟嗗洖閫丄L,浣欐暟鍥為丄H, (瀛楄妭榪愮畻);
鎴?鍟嗗洖閫丄X,浣欐暟鍥為丏X, (瀛楄繍綆?.
AAD 闄ゆ硶鐨凙SCII鐮佽皟鏁?
CBW 瀛楄妭杞崲涓哄瓧. (鎶夾L涓瓧鑺傜殑絎﹀彿鎵╁睍鍒癆H涓幓)
CWD 瀛楄漿鎹負鍙屽瓧. (鎶夾X涓殑瀛楃殑絎﹀彿鎵╁睍鍒癉X涓幓)
CWDE 瀛楄漿鎹負鍙屽瓧. (鎶夾X涓殑瀛楃鍙鋒墿灞曞埌EAX涓幓)
CDQ 鍙屽瓧鎵╁睍. (鎶奅AX涓殑瀛楃殑絎﹀彿鎵╁睍鍒癊DX涓幓)
涓夈侀昏緫榪愮畻鎸囦護
鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹
AND 涓庤繍綆?
OR 鎴栬繍綆?
XOR 寮傛垨榪愮畻.
NOT 鍙栧弽.
TEST 嫻嬭瘯.(涓ゆ搷浣滄暟浣滀笌榪愮畻,浠呬慨鏀規爣蹇椾綅,涓嶅洖閫佺粨鏋?.
SHL 閫昏緫宸︾Щ.
SAL 綆楁湳宸︾Щ.(=SHL)
SHR 閫昏緫鍙崇Щ.
SAR 綆楁湳鍙崇Щ.(=SHR)
ROL 寰幆宸︾Щ.
ROR 寰幆鍙崇Щ.
RCL 閫氳繃榪涗綅鐨勫驚鐜乏縐?
RCR 閫氳繃榪涗綅鐨勫驚鐜彸縐?
浠ヤ笂鍏縐諱綅鎸囦護,鍏剁Щ浣嶆鏁板彲杈?55嬈?
縐諱綅涓嬈℃椂, 鍙洿鎺ョ敤鎿嶄綔鐮? 濡?SHL AX,1.
縐諱綅>1嬈℃椂, 鍒欑敱瀵勫瓨鍣–L緇欏嚭縐諱綅嬈℃暟.
濡?MOV CL,04
SHL AX,CL
鍥涖佷覆鎸囦護
鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹
DS:SI 婧愪覆孌靛瘎瀛樺櫒 :婧愪覆鍙樺潃.
ES:DI 鐩爣涓叉瀵勫瓨鍣?鐩爣涓插彉鍧.
CX 閲嶅嬈℃暟璁℃暟鍣?
AL/AX 鎵弿鍊?
D鏍囧織 0琛ㄧず閲嶅鎿嶄綔涓璖I鍜孌I搴旇嚜鍔ㄥ閲? 1琛ㄧず搴旇嚜鍔ㄥ噺閲?
Z鏍囧織 鐢ㄦ潵鎺у埗鎵弿鎴栨瘮杈冩搷浣滅殑緇撴潫.
MOVS 涓蹭紶閫?
( MOVSB 浼犻佸瓧絎? MOVSW 浼犻佸瓧. MOVSD 浼犻佸弻瀛? )
CMPS 涓叉瘮杈?
( CMPSB 姣旇緝瀛楃. CMPSW 姣旇緝瀛? )
SCAS 涓叉壂鎻?
鎶夾L鎴朅X鐨勫唴瀹逛笌鐩爣涓蹭綔姣旇緝,姣旇緝緇撴灉鍙嶆槧鍦ㄦ爣蹇椾綅.
LODS 瑁呭叆涓?
鎶婃簮涓蹭腑鐨勫厓绱?瀛楁垨瀛楄妭)閫愪竴瑁呭叆AL鎴朅X涓?
( LODSB 浼犻佸瓧絎? LODSW 浼犻佸瓧. LODSD 浼犻佸弻瀛? )
STOS 淇濆瓨涓?
鏄疞ODS鐨勯嗚繃紼?
REP 褰揅X/ECX<>0鏃墮噸澶?
REPE/REPZ 褰揨F=1鎴栨瘮杈冪粨鏋滅浉絳?涓擟X/ECX<>0鏃墮噸澶?
REPNE/REPNZ 褰揨F=0鎴栨瘮杈冪粨鏋滀笉鐩哥瓑,涓擟X/ECX<>0鏃墮噸澶?
REPC 褰揅F=1涓擟X/ECX<>0鏃墮噸澶?
REPNC 褰揅F=0涓擟X/ECX<>0鏃墮噸澶?
浜斻佺▼搴忚漿縐繪寚浠?br>鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹
1>鏃犳潯浠惰漿縐繪寚浠?(闀胯漿縐?
JMP 鏃犳潯浠惰漿縐繪寚浠?
CALL 榪囩▼璋冪敤
RET/RETF榪囩▼榪斿洖.
2>鏉′歡杞Щ鎸囦護 (鐭漿縐?-128鍒?127鐨勮窛紱誨唴)
( 褰撲笖浠呭綋(SF XOR OF)=1鏃?OP1
JA/JNBE 涓嶅皬浜庢垨涓嶇瓑浜庢椂杞Щ.
JAE/JNB 澶т簬鎴栫瓑浜庤漿縐?
JB/JNAE 灝忎簬杞Щ.
JBE/JNA 灝忎簬鎴栫瓑浜庤漿縐?
浠ヤ笂鍥涙潯,嫻嬭瘯鏃犵鍙鋒暣鏁拌繍綆楃殑緇撴灉(鏍囧織C鍜孼).
JG/JNLE 澶т簬杞Щ.
JGE/JNL 澶т簬鎴栫瓑浜庤漿縐?
JL/JNGE 灝忎簬杞Щ.
JLE/JNG 灝忎簬鎴栫瓑浜庤漿縐?
浠ヤ笂鍥涙潯,嫻嬭瘯甯︾鍙鋒暣鏁拌繍綆楃殑緇撴灉(鏍囧織S,O鍜孼).
JE/JZ 絳変簬杞Щ.
JNE/JNZ 涓嶇瓑浜庢椂杞Щ.
JC 鏈夎繘浣嶆椂杞Щ.
JNC 鏃犺繘浣嶆椂杞Щ.
JNO 涓嶆孩鍑烘椂杞Щ.
JNP/JPO 濂囧伓鎬т負濂囨暟鏃惰漿縐?
JNS 絎﹀彿浣嶄負 "0" 鏃惰漿縐?
JO 婧㈠嚭杞Щ.
JP/JPE 濂囧伓鎬т負鍋舵暟鏃惰漿縐?
JS 絎﹀彿浣嶄負 "1" 鏃惰漿縐?
3>寰幆鎺у埗鎸囦護(鐭漿縐?
LOOP CX涓嶄負闆舵椂寰幆.
LOOPE/LOOPZ CX涓嶄負闆朵笖鏍囧織Z=1鏃跺驚鐜?
LOOPNE/LOOPNZ CX涓嶄負闆朵笖鏍囧織Z=0鏃跺驚鐜?
JCXZ CX涓洪浂鏃惰漿縐?
JECXZ ECX涓洪浂鏃惰漿縐?
4>涓柇鎸囦護
INT 涓柇鎸囦護
INTO 婧㈠嚭涓柇
IRET 涓柇榪斿洖
5>澶勭悊鍣ㄦ帶鍒舵寚浠?
HLT 澶勭悊鍣ㄦ殏鍋? 鐩村埌鍑虹幇涓柇鎴栧浣嶄俊鍙鋒墠緇х畫.
WAIT 褰撹姱鐗囧紩綰縏EST涓洪珮鐢靛鉤鏃朵嬌CPU榪涘叆絳夊緟鐘舵?
ESC 杞崲鍒板澶勭悊鍣?
LOCK 灝侀攣鎬葷嚎.
NOP 絀烘搷浣?
STC 緗繘浣嶆爣蹇椾綅.
CLC 娓呰繘浣嶆爣蹇椾綅.
CMC 榪涗綅鏍囧織鍙栧弽.
STD 緗柟鍚戞爣蹇椾綅.
CLD 娓呮柟鍚戞爣蹇椾綅.
STI 緗腑鏂厑璁鎬綅.
CLI 娓呬腑鏂厑璁鎬綅.
鍏佷吉鎸囦護
鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹鈹
DW 瀹氫箟瀛?2瀛楄妭).
PROC 瀹氫箟榪囩▼.
ENDP 榪囩▼緇撴潫.
SEGMENT 瀹氫箟孌?
ASSUME 寤虹珛孌靛瘎瀛樺櫒瀵誨潃.
ENDS 孌電粨鏉?
END 紼嬪簭緇撴潫
鏈枃鏉ヨ嚜CSDN鍗氬錛岃漿杞借鏍囨槑鍑哄錛?a >http://blog.csdn.net/lqk1985/archive/2008/09/11/2911250.aspx