汇编程序的直接操作性,C程序计算的简单化,经常使用汇编调用C程序,我在汇编程序中有需要调用两个C程序,结果发现调用C程序1(_CALL1 带参数的调用),进入C程序后仿真暂停,使用反汇编查看,发现R6和R7带去的参数赋值给10H,和11H。例句是: MOV 10H,R6; MOV 11H,R7 。,而汇编调用第二个C程序2的时候,(_CALL2),也是进入C程序后仿真暂停,反汇编看到R6/R7参数传递给44H/45H 。反汇编语句: MOV 44H,R6; MOV 45H,R7 。因为C程序的运行,将影响原有汇编程序使用的寄存器的数据,当C程序运行完毕返回的时候,汇编程序可能会造成因数据错误而出错。怎样才能指定C程序运行占用寄存器的开始地址位置?请高手指教。 |