DSP++ [p0 ++] = r0

本文详细介绍了指针寄存器存储指令的各种语法形式及其选项,包括使用后增、后减操作更新目标指针,对源指针进行小偏移量及大偏移量的调整,并提供了具体的示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Store Pointer Register


General Form

[ indirect_address ] = P-register

Syntax

[Preg ] = Preg ;   /* indirect (a)*/

[Preg ++ ] = Preg ;   /* indirect, post-increment (a)*/

[Preg -- ] = Preg ;   /* indirect, post-decrement (a)*/

[Preg + uimm6m4 ] = Preg ;   /* indexed with small offset (a)*/

[Preg + uimm17m4 ] = Preg ;   /* indexed with large offset (b)*/

[Preg - uimm17m4 ] = Preg ;   /* indexed with large offset (b)*/

[ FP -uimm7m4 ] = Preg ;   /* indexed FP-relative (a)*/


Options

The Store Pointer Register instruction supports the following options.

  • Post-increment the destination pointer by 4 bytes.
  • Post-decrement the destination pointer by 4 bytes.
  • Offset the source pointer with a small (6-bit), word-aligned (multiple of 4), unsigned constant.
  • Offset the source pointer with a large (18-bit), word-aligned (multiple of 4), signed constant.
  • Frame Pointer (FP) relative and offset with a 7-bit, word-aligned (multiple of 4), negative constant. 

Example

[ p2 ] = p3 ;

[ sp ++ ] = p5 ;

[ p0 -- ] = p2 ;

[ p2 + 8 ] = p3 ;

[ p2 + 0x4444 ] = p0 ;

[ fp -12 ] = p1 ;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值