Assembly language (Wang Shuang third edition) ret retf summary and detection points 10.1

Key guide:

The code corresponding to ret and the result:

assume cs:codesg

stack segment
	db 16 dup(0)
stack ends

codesg segment
	mov ax,4c00h
	int 21h
start:
	mov ax,stack
	mov ss,ax
	mov sp,16
	mov ax,0
	
	push ax
	mov bx,0
	ret;执行之后就是将IP修改成为栈顶所对应的数据,再执行出栈(SP=SP+2)
codesg ends
end start

The corresponding code and result of retf:

assume cs:codesg

stack segment
	db 16 dup(0)
stack ends

codesg segment
	mov ax,4c00h
	int 21h
start:
	mov ax,stack
	mov ss,ax
	mov sp,16
	mov ax,0
	push cs
	push ax

	mov bx,0
	retf;执行之后就是将IP修改成为栈顶所对应的数据,再执行出栈(SP=SP+2)
	;随后将CS再修改成为栈顶所对应的数据,再执行出栈(SP=SP+2)
codesg ends
end start

 

Monitoring point 10.1

Code:

assume cs:codesg

stack segment
	db 16 dup(0)
stack ends

codesg segment
start:
	mov ax,stack
	mov ss,ax
	mov sp,16
	mov ax,1000h
	push ax
	mov ax,0
	push ax
	retf;执行之后就是将IP修改成为栈顶所对应的数据,再执行出栈(SP=SP+2)
codesg ends
end start

OK

Guess you like

Origin blog.csdn.net/weixin_42859280/article/details/108025232