复习8086汇编中的 CLI STI CLD STD指令

CLI 全称 Clear Interupt

STI 全称 Set Interupt

CLD 全称 Clear Director

STD 全称 Set Director

CLI和STI是用来屏蔽中断和恢复中断用的,如 设置栈基址SS和偏移地址SP时,需要CLI,因为如果这两条指令被分开了,那么很有可能SS被修改了,但由于中断,而代码跳去其它地方执行了,SP还没来得及修改,就有可能出错。

CLD和STD是在字行块传送时使用的,它们决定了块传送的方向,如

CLD

push es

pop ds

mov di,1000h

mov si,2000h

mov cx,100h

rep movsb

那么相当于 

mov cx,100h

next:

mov es:[di],ds:[si]

add di

add si

loop next

所以CLD是使得传送方向从低地址到高地址,而STD就刚好相反了。

CLI和STI挺好分辨的,Clear Interupt清除中断,就相当于屏蔽了,而STI设置中断,也就是启用了。

CLD和STD要咋记。。。没想到

你可能感兴趣的:(汇编与反汇编)