双十一是什么意思:能不能告诉我几条直接跟硬件打交道的命令?

来源:百度文库 编辑:高考问答 时间:2024/04/30 07:45:48
能不能告诉我几条直接跟硬件打交道的命令?

MOV
功能:把源操作数送给目的操作数
语法:MOV目的操作数,源操作数
格式:MOVr1,r2
MOVr,m
MOVm,r
MOVr,data

XCHG
功能:交换两个操作数的数据
语法:XCHG
格式:XCHGr1,r2XCHGm,rXCHGr,m

PUSH,POP
功能:把操作数压入或取出堆栈
语法:PUSH操作数POP操作数
格式:PUSHrPUSHMPUSHdataPOPrPOPm

PUSHF,POPF,PUSHA,POPA
功能:堆栈指令群
格式:PUSHFPOPFPUSHAPOPA

LEA,LDS,LES
功能:取地址至寄存器
语法:LEAr,mLDSr,mLESr,m

XLAT(XLATB)
功能:查表指令
语法:XLATXLATm

算数运算指令
ADD,ADC
功能:加法指令
语法:ADDOP1,OP2ADCOP1,OP2
格式:ADDr1,r2ADDr,mADDm,rADDr,data
影响标志:C,P,A,Z,S,O

SUB,SBB
功能:减法指令
语法:SUBOP1,OP2SBBOP1,OP2
格式:SUBr1,r2SUBr,mSUBm,rSUBr,dataSUBm,data
影响标志:C,P,A,Z,S,O

INC,DEC
功能:把OP的值加一或减一
语法:INCOPDECOP
格式:INCr/mDECr/m
影响标志:P,A,Z,S,O

NEG
功能:将OP的符号反相(取二进制补码)
语法:NEGOP
格式:NEGr/m
影响标志:C,P,A,Z,S,O

MUL,IMUL
功能:乘法指令
语法:MULOPIMULOP
格式:MULr/mIMULr/m
影响标志:C,P,A,Z,S,O(仅IMUL会影响S标志)

DIV,IDIV
功能:除法指令
语法:DIVOPIDIVOP
格式:DIVr/mIDIVr/m

CBW,CWD
功能:有符号数扩展指令
语法:CBWCWD

AAA,AAS,AAM,AAD
功能:非压BCD码运算调整指令
语法:AAAAASAAMAAD
影响标志:A,C(AAA,AAS)S,Z,P(AAM,AAD)

DAA,DAS
功能:压缩BCD码调整指令
语法:DAADAS
影响标志:C,P,A,Z,S

位运算指令集
AND,OR,XOR,NOT,TEST
功能:执行BIT与BIT之间的逻辑运算
语法:ANDr/m,r/m/dataORr/m,r/m/dataXORr/m,r/m/dataTESTr/m,r/m/dataNOTr/m
影响标志:C,O,P,Z,S(其中C与O两个标志会被设为0)NOT指令不影响任何标志位

SHR,SHL,SAR,SAL
功能:移位指令
语法:SHRr/m,data/CLSHLr/m,data/CLSARr/m,data/CLSALr/m,data/CL
影响标志:C,P,Z,S,O

ROR,ROL,RCR,RCL
功能:循环移位指令
语法:RORr/m,data/CLROLr/m,data/CLRCRr/m,data/CLRCLr/m,data/CL
影响标志:C,P,Z,S,O

程序流程控制指令集
CLC,STC,CMC
功能:设定进位标志
语法:CLCSTCCMC
标志位:C

CLD,STD
功能:设定方向标志
语法:CLDSTD
标志位:D

CLI,STI
功能:设定中断标志
语法:CLISTI
标志位:I

CMP
功能:比较OP1与OP2的值
语法:CMPr/m,r/m/data
标志位:C,P,A,Z,O

JMP
功能:跳往指定地址执行
语法:JMP地址

JXX
功能:当特定条件成立则跳往指定地址执行
语法:JXX地址
注:
A:ABOVE,当C=0,Z=0时成立
B:BELOW,当C=1时成立
C:CARRY,当弁时成立CXZ:CX寄存器的值为0(ZERO)时成立
E:EQUAL,当Z=1时成立
G:GREATER(大于),当Z=0且S=0时成立
L:LESS(小于),当S不为零时成立
N:NOT(相反条件),需和其它符号配合使用
O:OVERFLOW,O=1时成立
P:PARITY,P=1时成立
PE:PARITYEVEN,P=1时成立
PO:PARITYODD,P=0时成立
S:SIGN,S=1时成立
Z:ZERO,Z=1时成立

LOOP
功能:循环指令集
语法:LOOP地址

LOOPE(Z)
地址LOOPNE(Z)地址
标志位:无

CALL,RET
功能:子程序调用,返回指令
语法:CALL地址RETRETn
标志位:无

INT,IRET
功能:中断调用及返回指令
语法:INTnIRET
标志位:在执行INT时,CPU会自动将标志寄存器的值入栈,在执行IRET时则会将堆栈中的标志值弹回寄存器

字符串操作指令集
MOVSB,MOVSW,MOVSD
功能:字符串传送指令
语法:MOVSBMOVSWMOVSD
标志位:无

CMPSB,CMPSW,CMPSD
功能:字符串比较指令
语法:CMPSBCMPSWCMPSD
标志位:C,P,Z,S,O

SCASB,SCASW
功能:字符串搜索指令
语法:SCASBSCASW
标志位:C,P,Z,S,O

LODSB,LODSW,STOSB,STOSW
功能:字符串载入或存贮指令
语法:LODSBLODSWSTOSBSTOSW
标志位:无

REP,REPE,REPNE
功能:重复前缀指令集
语法:REP指令SREPE指令SREPNE指令S
标志位:依指令S而定