assume cs:code ; 记忆点: 1.主函数, 子函数都需要自己维护bp和sp(当然不维护也行,但是非常容易出bug,所以还是要强烈按照下面子函数头,子函数尾.主函数头尾这么写,最安全.) 2. 函数ip都有压栈出站自动维护但是自己要算明白栈的偏移量. code segment radd proc push bp ;子函数的头部固定写法 mov bp,sp mov si,[bp+4] mov di,[bp+6] add si,di mov ax,si pop bp ;子函数的尾部固定写法. ; 打印返回值: add al, 30h mov dl , al MOV AH,2 INT 21H ret radd endp start: mov ax,4 mov bx,5 push ax push bx ;主函数头 call radd add sp,4 ;主函数尾清理栈. mov ax,4c00h int 21h code ends end start
讲解视频参考:
https://www.zhihu.com/zvideo/1514614054967009282
标签:传参,汇编,code,函数,demo,mov,bp,ax,子函数 From: https://www.cnblogs.com/zhangbo2008/p/17448263.html