MATLAB 自带RS编码函数中 gf 数据转化为 double 数组的方法

问题: MATLAB自带RS编码函数 rsenc,解码函数 rsdec: 

1、rsenc 编码后的输出为 gf 类型的数据, 我们通常希望将其转化为能处理的数组,那么该如何操作?

2、rsdec 解码之前需要将编码数组转化为函数可处理的 gf 类型数据,那么该如何操作?

1、对于问题 1, 例如:

 m = 3;           % Number of bits per symbol
 n = 2^m - 1;     % Codeword length .
 k = 3;           % Message length
 msg = gf([2 7 3; 4 0 6],m,13);
 code = rsenc(msg,n,k)

生成的 code 是 gf 类型的数据:

code = GF(2^3) array. Primitive polynomial = D^3+D+1 (11 decimal)
 
Array elements = 
 
   7   4   3   7   0   0   4
   6   2   2   7   6   7   3
   3   0   5   5   6   0   6

当我们需要提取编码后的数据时,操作如下

RS_output = double(code.x)

得到 double 型数组:


RS_output =

     7     4     3     7     0     0     4
     6     2     2     7     6     7     3
     3     0     5     5     6     0     6

原因: 不详,可能 code 为一个结构体。

2 、对于问题 2,先利用 gf 函数将编码数组转化为 gf 类型数据:

msg  = gf(RS_output,m)

然后就可以使用 rsdec 解码函数了。

  • 6
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值