MATLAB 帮助中心
创建向量、数组下标
y = j:k
y = j:i:k
y = j:k 返回等间距向量 [j, j+1 ,..., k]。当 j > k 时,j:k 为空。
y
j
k
j > k
j:k
至少一个冒号操作数必须为 fi 对象。所有冒号操作数都必须为整数值。所有定点操作数都必须进行二进制小数点定标。不支持斜率偏置定标。如果任一操作数是复数,则 colon 函数会生成警告,并且只使用操作数的实部。
fi
colon
y = colon(j,k) 与 y = j:k 相同。
y = colon(j,k)
示例
y = j:i:k 返回等间距向量 [j,j+i,j+2i, ...,j+m*i],其中 m = fix((k-j)/i)。当 i == 0、i > 0 且 j > k 或 i < 0 且 j < k 时,y = j:i:k 返回空矩阵。
i
[j,j+i,j+2i, ...,j+m*i]
m = fix((k-j)/i)
i == 0
i > 0
i < 0
j < k
全部折叠
当 fi 用作冒号运算符时,所有冒号操作数都必须有整数值。
a = fi(1,0,3,0); b = fi(2,0,8,0); c = fi(12,0,8,0); x = a:b:c
x = 1 3 5 7 9 11 DataTypeMode: Fixed-point: binary point scaling Signedness: Unsigned WordLength: 8 FractionLength: 0
由于所有输入操作数均无符号,因此 x 无符号且字长为 8。生成的向量的小数长度始终为 0。
x
a= fi(int8(-1)); b = uint8(255); c = a:b; len = c.WordLength
len = 9
signedness = c.Signedness
signedness = 'Signed'
c 的字长需要额外的位来处理 int8 和 uint8 范围的交集。c 的数据类型为有符号,因为操作数 a 有符号。
c
int8
uint8
a
如果开始和结束操作数为无符号,则增量操作数可以是负值。
x = fi(4,false):-1:1
x = 4 3 2 1 DataTypeMode: Fixed-point: binary point scaling Signedness: Unsigned WordLength: 16 FractionLength: 0
如果任一操作数属于浮点类型,则输出的字长和符号性与 fi 操作数相同
x = fi(1):10
x = 1 2 3 4 5 6 7 8 9 10 DataTypeMode: Fixed-point: binary point scaling Signedness: Signed WordLength: 16 FractionLength: 0
x = fi(1):10 等效于 fi(1:10, true, 16, 0),因此 x 有符号且其字长为 16 位。
fi(1:10, true, 16, 0)
如果您的代码使用非整数操作数,请重写冒号表达式,使操作数为整数。
以下代码不起作用,因为冒号操作数不是整数值。
Fs = fi(100); n = 1000; t = (0:1/Fs:(n/Fs - 1/Fs));
重写冒号表达式以使用整数操作数。
Fs = fi(100); n = 1000; t = (0:(n-1))/Fs;
如果任一冒号操作数的值超出冒号表达式中使用的数据类型的范围,MATLAB® 就会生成错误。
y = fi(1,true,8,0):256
MATLAB 生成错误,因为 256 超出了 fi(1,true, 8,0) 的范围。此行为与内置整数的行为匹配。例如,y = int8(1):256 会生成相同的错误。
fi(1,true, 8,0)
y = int8(1):256
开始操作数,指定为实整数标量值 fi 对象或内置数值类型。
如果指定非标量数组,MATLAB 将 j:i:k 解释为 j(1):i(1):k(1)。
j:i:k
j(1):i(1):k(1)
数据类型:fi |single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
single
double
int16
int32
int64
uint16
uint32
uint64
增量,指定为实整数标量值 fi 对象或内置数值类型。即使开始操作数 j 和结束操作数 k 均无符号,增量操作数 i 也可以是负值。
结束操作数,指定为实整数标量值 fi 对象或内置数值类型。
Fixed-Point Designer™ 使用以下规则确定 y 的数据类型:
数据类型包括输入操作数的定点类型范围的并集。
如果开始或结束操作数有符号,则生成的数据类型也有符号。否则,生成的数据类型无符号。
y 的字长是最小值,因此小数长度为 0,最低有效位的真实值为 1。
如果任一操作数属于浮点类型,则 y 的字长和符号性从 fi 操作数中派生。
如果任一操作数属于定标双精度类型,则 y 是定标双精度数。
y 的 fimath 与输入操作数的 fimath 相同。
fimath
如果所有 fi 对象的数据类型均为 double,则 y 的数据类型是 double。如果所有 fi 对象的数据类型均为 single,则 y 的数据类型是 single。如果既有 double 输入,也有 single 输入,但没有定点输入,则输出数据类型为 single。
在 R2013b 中推出
colon | fi
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处