ZHCADC3B February 2019 – October 2023
C28x 器件使用多种汇编代码寻址模式。这里简要列出了这些模式,如需详细了解这些模式,请参阅 TMS320C28x DSP CPU 和指令集参考指南 (SPRU430) 中的“C28x 寻址模式”一章。
C28x EABI 调用约定要求将状态寄存器 (ST1) 的地址模式位 (AMODE) 设置为 0,这是默认设置。设置 AMODE = 0 会限制允许的寻址模式集,但允许 SP 相对寻址。
请注意,汇编代码可能会设置 AMODE = 1,因此链接器必须准备好处理 7 位直接寻址。
.
模式名称 | 汇编示例 | 重定位类型 | 注释 |
---|---|---|---|
直接寻址 | MOV AL, @var | DP 相对重定位 | |
堆栈寻址 | MOV AL,*-SP[4] | 不重定位 | |
间接寻址 | MOV AL,*XAR3 | 不重定位 | |
寄存器寻址 | MOV ACC, @T | 不重定位 | 存储器映射寄存器移动 |
数据立即寻址 | MOV AL, *(0:var) | 绝对重定位 | |
程序立即寻址 | MAC P, loc16, 0:pma | 绝对重定位 | loc16 是一个完全不同的存储器操作数 |
I/O 立即寻址 | OUT *(addr), loc16 | 绝对重定位 | loc16 是一个完全不同的存储器操作数 |