本文共 494 字,大约阅读时间需要 1 分钟。
系统寄存器:
A:累加器 B:乘除运算/暂存 C:进位标志/位累加器 DPTR:16位数据指针,访问ROM/XRAM PC:程序计数器 PSW:程序状态字 R0:8位数据指针,访问IRAM R1:IRAM堆指针,可用来分配IRAM局部数组 R2,R3:XRAM堆指针,可用来分配XRAM局部数组 SP:栈指针 A、B、C、DPTR、R0、PSW等是自动的,除了ISR外,不必入栈保护寄存器变量和寄存器参数: 在子程序调用过程中可以使用R4~R7这4个寄存器作为变量或参数 寄存器变量按照R4-- 寄存器参数按照R7-- 如果变量或参数超过4个时,则超出的从10H~1FH分配 子程序返回值: 返回bit型,保存在C中 返回byte型,保存在R7中 返回word型,保存在(R6,R7)中 IRAM内存分配: 00~07:工作寄存器 08~0F:快中断专用 10~1F:存储器变量和函数参数 20~2F:bit、bdata 30~FF:全局变量、栈、堆 以上只是我写汇编程序的部分原则,相对来说比较合理。而楼主的参数传递方法与此大相径庭,无法兼容。转载地址:http://amjqj.baihongyu.com/