主要内容

subsasgn

下标赋值

描述

例子

一个= subsasgn (一个年代B调用语法(我)= B{我}= B,或我= B一个是一个对象。

MATLAB®使用内置的subsasgn函数解释索引赋值语句:

  • (我)= B赋值B融入一个由下标向量指定B必须有相同数量的元素或者是标量值。

  • A (i, j) =赋值B转化成的矩形子矩阵的元素一个由下标向量指定jB必须有长度(我)行和长度(j)列。

  • 冒号用作下标的冒号,如(我:)= B(:, i) = B,表示整个列或行。

  • 对于多维数组,(i, j, k,…)= B分配B的指定元素一个B必须长度(我)——- - - - - -长度(j)——- - - - - -长度(k)-…或者通过添加或删除单个维度来移动到那个尺寸。

提示

例如,您可以使用定点赋值,(:) = B,将具有一种数字类型的值转换为另一种数字类型。下标赋值语句赋值为B一个而保留的数字类型一个.下标赋值对整数数据类型的工作方式相同。

请注意

你必须叫subsasgn带有输出参数。subsasgn不修改索引操作中使用的对象(第一个参数)。您必须分配输出以获取修改后的对象。

例子

全部折叠

fi对象一个b,两者是有区别的

a = b

(:) = b

在第一种情况下,a = b替换一个b一个假设值、数字类型和fimath对象与b.在第二种情况下,(:) = b赋值b一个而保留的数字类型一个.您可以使用它来强制转换带有1的值numerictype对象到另一个numerictype对象。

例如,将16位数字转换为8位数字。

A = fi(0, 1, 8, 7)
a = 0 DataTypeMode:定点:二进制点缩放Signedness: Signed WordLength: 8 FractionLength: 7
B = fi(pi/4, 1, 16, 15)
b = 0.7854 DataTypeMode:定点:二进制点缩放Signedness: Signed WordLength: 16 FractionLength: 15
(:) = b
a = 0.7891 DataTypeMode: Fixed-point: binary point scaling Signedness: Signed WordLength: 8 FractionLength: 7

定义的变量acc来模拟DSP的40位累加器。本例中的下载188bet金宝搏乘积和和使用语法分配到累加器中acc(1) =….将值赋给累加器就像在寄存器中存储值一样。首先,打开日志记录模式并定义变量。在这个例子中,n输入数据中的点数是多少x和输出数据y,t代表时间。其余变量均定义为fi对象。输入数据x是一个高频正弦波加上一个低频正弦波。

fipref (“LoggingMode”“上”);n = 100;t = (0: n - 1) / n;X = fi(sin(2* t) + 0.2*cos(2* 50*t))([b =。5。5);y = 0(大小(x),“喜欢”, x);Acc = fi(0.0, true, 40,30);

下面的循环取输入的运行平均值x使用系数b.请注意,acc被分配到acc(1) =…与使用acc =…,它将覆盖并更改的数据类型acc

K = 2:n acc(1) = b(1)*x(K);c(1) = c + b(2)*x(1);y (k) = acc;结束

通过平均每一个其他样本,上面所示的环路通过低频正弦信号并衰减高频正弦信号。

情节(t x,“x -”、t、y,“啊——”)传说(输入数据的x '的输出数据y '

图中包含一个轴对象。轴对象包含两个类型为line的对象。这些对象表示输入数据x,输出数据y。

日志报告显示所使用变量的最小和最大日志值和范围。因为acc分配到而不是覆盖,这些日志反映累积的最小值和最大值。

logport (x, y, b, acc)
Minlog maxlog下界上界溢出下流x -1.200012 1.197998 -2 1.999939 00 y -0.9990234 0.9990234 -2 1.999939 00 b 0.5 0.5 -1 0.9999695 00 acc -0.9990234 0.9989929 -512 512 00

显示acc以验证其数据类型没有更改。

acc
acc = -0.0941 DataTypeMode:定点:二进制点缩放Signedness: Signed WordLength: 40 FractionLength: 30

重置fipref对象以恢复其默认值。

重置(fipref)

输入参数

全部折叠

用于索引操作的对象,指定为标量、向量或多维数组。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑|fi
复数的支持:金宝app是的

索引和下标的类型,指定为结构数组。年代是一个有两个字段的结构数组:

  • 类型是否包含字符向量或字符串(){},或,指定下标类型。

  • 潜艇包含实际下标的单元格数组、字符数组或字符串数组。

例子:的语法:一个(1:2)= B调用= subsasgn (S B)在哪里年代1乘1的结构是什么S.type = ' () 'S.subs = {1:2, ':'}.作为脚本使用的冒号被传递为“:”

数据类型:结构体

指定为标量、向量或多维数组的值。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑|fi
复数的支持:金宝app是的

输出参数

全部折叠

赋值语句的结果,它是作为第一个参数传入的修改过的对象,以标量、向量或多维数组的形式返回。

扩展功能

C / c++代码生成
使用MATLAB®Coder™生成C和c++代码。

GPU的代码生成
使用GPU Coder™为NVIDIA®GPU生成CUDA®代码。

之前介绍过的R2006a