汇编语言of常用指令

版权声明:本文为YuanChuang文章,未经博主允许转载。 https://blog.csdn.net/zzy1448331580/article/details/83278347

dst:目的操作符           src:源操作符

str dst,把任务状态段寄存器tr内容保存到dst指定的地址中。

ltr src,从src指定的地址中装入数据给任务状态段寄存器tr。

sldt dst,把局部描述符表寄存器ldtr内容保存到dst指定地址中。

lldt src,从src指定地址中装入数据给局部描述符表寄存器ldtr。

sidt dst,把中断描述符表寄存器idtr内容保存到dst指定地址中。

lidt src,从src指定地址中装入数据给中断描述符表寄存器idtr。

sgdt dst,把sgdt的内容保存到dst指定地址中。

lgdt src,从src指定地址中装入数据到全局描述符表寄存器gdtr中。

bsr dst,src,从src高位开始扫描直到遇到1,并置该位索引号于dst中。

bsf dst,src,从src地位开始扫描直到遇到1,并置该位索引号于dst中。

bts dst,src,把dst中由src指定的索引号送入cf中,并把dst相应位置1。

btr dst,src,把dst中由src指定的索引号送入cf中,并把dst中相应位清零。

btc dst,src,把dst中由src指定索引号送入cf中,并把dst相应位取反。

bt dst,src,把dst中由src指定索引号送入cf中。

iret,从中断子程序中返回。

int num,中断调用子程序。

ret byte,从子程序中返回。

call dst,调用子程序。

loop label,循环执行当前地址与label之间的指令,直到ecx为0。

jmp,无条件转移指令。

outs port,src,把ds:si数据输出到dx指定的端口中去。

ins dst,port,从dx指定端口中读取数据送入到ds:di中。

scas dst,比较累加器与es:di内容,di更新,影响标志位,不保存结果。

cmps, 比较dst与src内容,si,di更新,影响标志位,不保存结果。

lods,把si内容装入累加器,更新si。

stos,把累加器内容放入es:di中,更新di。

movs,复制ds:si字符串到es:di区域,同时更新si,di。

shrd dst,src,count,dst右移count位,dst空出位用src的高count位补,src不变。

shid dst,arc,count,dst左移count位,dst空出位用src的高count补位,src不变。

rcr dst,count,带进位循环右移。

rcl dst,count,带进位循环左移。

ror dst,count,循环右移。

rol dst,count,循环左移。

sar dst,count,算术右移。

shr dst,count,逻辑右移。

sal dst,count,算术左移。

shl dst,count,逻辑左移。

test dst,src,dst与src对应每一位进行逻辑与运算,影响标志位,不保存结果。

xor dst,src,dst与src对应每一位进行逻辑异或运算,结果放进dst。

not dst,dst每一位取反。

or dst,src,dst与src对应每一位进行逻辑或运算,结果放入dst。

and dst,src,把dst与src对应每一位进行逻辑与运算,结果放入dst。

idiv src,相除,商送入累加器,余数送入寄存器,src为有符号数。

div src,相除,商送入累加器,余数送入寄存器,src为无符号数。

imul src,src乘以累加器,结果送入寄存器,src为有符号是数。

mul src,src乘以累加器,结果送入相应寄存,src为无符号数。

cmp dst,src,dst与src相减,影响标志位,不保存结果。

neg dst,dst求补。

dec dst,dst减一。

sbb dst,src,dst减src减cf,结果放入dst。

sub dst,src,dst与src相减,结果放入dst。

inc dst,dst加一。

adc dst,src,dst加src加cf,结果放入dst。

add dst,src,src与dst相加,结果放入dst。

pushf,把psw压入堆栈。

popf,把psw弹出堆栈。

lahf,把psw的低八位装入ah。

sahf,把ah送入psw的低八位。

ati,置psw的if位。

std,置psw的df位。

stc,置psw的cf位。

cli,清psw的if位。

cld,清psw的df位。

clc,清psw的cf位。

xlat,换码操作。

out port,accum,把累加器中al,ax,或者eax中数据传送到指定端口。

in acxum,port,把指定端口数据读入累加器al,ax或者eax中。

lds dst,src,把src内容中低地址传送到dst寄存器,高地址装入ds中。

lea dst,src,把src的偏移地址传送给dst寄存器。

xchg dst,src,交换src与dst内容。

pop dst,栈顶出栈。

push src,src内容入栈。

mov dst,src,把src内容复制到dst中。

猜你喜欢

转载自blog.csdn.net/zzy1448331580/article/details/83278347