自己总结:汇编寄存器冲突问题

时间:2014-10-11 18:25:07   收藏:0   阅读:196

寄存器冲突问题,解决方案:

在子程序的开始将子程序中所有用到的寄存器中的内容都保存起来,在子程序返回前再恢复。可以用栈来保存寄存器中的内容。

以后,我们编写子程序的标准框架如下:

子程序开始:子程序中使用的寄存器入栈

      子程序内容

      子程序中使用的寄存器出栈

      返回(ret、retf)

capital:
    push cx
    push si    
change:
    mov cl,[si]
    mov ch,0
    jcxz ok
    and byte ptr [si],11011111b
    inc si
    jmp short change

ok:
    pop si
    pop cx
    ret

要注意寄存器入栈和出栈的顺序。

 

原文:http://www.cnblogs.com/LittleRedPoint/p/4019330.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!