整数类型数据的运算函数

一、bitshift 函数

bitshift函数实现数据位移操作。bitshift(A,B)函数第二个参数为正,则对A的二进制数左移。第二个参数为负,则右移。bitshift(A,n,N),N表示移位后的数据最多只有N为,若超过N位,多余的位将被丢弃。例如bitshift(255,1),它的结果是510;bitshift(255,1,8)的结果是254。因为255转化为二进制数为11111111,向左移一位就为111111110,但是最多位数是8位,所以把最左边那位丢弃,最后就是11111110,十进制数就是254。

二、bitset函数

bitset函数将指定的数据位设置为1。bitset(A,n,i)将指定的第n数据位的值设置为i。第几位是从右到左的数。若没有i,则将相应的数据位设置为1。

三、bitget函数

bitget函数获取指定数据位的数值。bitget(A,n)函数根据输入的第二个参数n获取指定的第n位的数值。第几位是从右到左的数。

四、bitxor函数

bitxor函数实现数据位异或运算。

其他的函数

error(nargchk(1,5,nargin))这个语句中,存在着三个函数,首先介绍nargin函数。

在matlab中定义一个函数时, 在函数体内部, nargin是用来判断输入变量个数的函数。nargchk(1,5,nargin),当nargin的值大于5,nargchk返回字符串Too many input arguments. '当nargin的值小于1,nargchk返回字符串not enough input arguments.当nargin的值在1到5之间,nargchk返回空字符串。error以错误的方式,就是以红色的字体显示警告字符串。

matlab中的近似函数

ceil函数是向上取整,也就是取不小于它的最小整数,floor是向下取整,也就是取不大于它的最大整数。round就是四舍五入。

setfield函数

设置结构数组中指定的字段的值。例如feature_idx = setfield(feature_idx,lbpname,[(ix_st+1):ix_end]'),指的是设定结构数组中lbpname字段的值为第三个参数代表的值,lbpname是字符串。

std函数

std(x)求x的标准差。当x是一个向量的时候,就是求这个向量的标准差,利用公式

ab7cebeb884192e7f401c2c51a667a88.png

若x为一个矩阵,std(x)返回的是行向量,计算的是每列元素中的标准差。std(x,flag)当flag = 0的时候,与std(x)一样,当flag=1的时候利用下面的式子计算标准差。

c1104a978242f10d3f57c1c12afe3a91.png

s = std(X,flag,dim),flag的功能同上,dim指定相应的维数,若X为二维矩阵,dim = 1指定计算每列元素的标准差,返回值是行向量。若dim = 2指定计算每行元素的标准差,返回值是列向量。

getfield函数

getfield函数是读取结构体数组中相应字段的值。value = getfield(struct, 'field'),就是读取结构体struct中字段field的值。

strfind函数

strfind(s1,s2)在s1中寻找s2,返回在s1中的位置。

findstr(s1,s2)在长的字符串中寻找短的字符串出现的次数,并返回在长字符串中的位置。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐