Matlab将数字值转换为指标前缀字符串(SI /工程)【含Matlab源码】

科学前缀编号

函数NUM2SIP将数字标量转换为带有度量标准前缀(aka SI前缀或工程前缀)的字符串。例如,值1000转换为“ 1 k”。

###公制前缀示例###

>> num2sip(10000) OR num2sip(1e4)
ans = '10 k'
>> num2sip(10000,4,true)
ans = '10 kilo'
>> num2sip(10000,4,false,true)
ans = '10.00 k'

>> num2sip(999,3)
ans = '999 '
>> num2sip(999,2)
ans = '1 k'

>> num2sip(0.5e6)
ans = '500 k'
>> num2sip(0.5e6,[],'M')
ans = '0.5 M'

>> ['Power: ',num2sip(200e6,[],true),'watt']
ans = 'Power: 200 megawatt'

>> sprintf('Clock frequency is %shertz.',num2sip(1234567890,3,true))
ans = 'Clock frequency is 1.23 gigahertz.'

>> num2sip(sip2num('9 T')) % 9 tera == 9e12 == 9*1000^4
ans = '9 T'

###二进制前缀示例###

>> num2bip(10240) OR num2bip(1.024e4) OR num2bip(pow2(10,10)) OR num2bip(10*2^10)
ans = '10 Ki'
>> num2bip(10240,4,true)
ans = '10 kibi'
>> num2bip(10240,4,false,true)
ans = '10.00 Ki'

>> num2bip(1023,3)
ans = '1020 '
>> num2bip(1023,2)
ans = '1 Ki'

>> num2bip(pow2(19))
ans = '512 Ki'
>> num2bip(pow2(19),[],'Mi')
ans = '0.5 Mi'

>> ['Memory: ',num2bip(pow2(200,20),[],true),'byte']
ans = 'Memory: 200 mebibyte'

>> sprintf('Data saved in %sbytes.',num2bip(1234567890,3,true))
ans = 'Data saved in 1.15 gibibytes.'

>> num2bip(bip2num('9 Ti')) % 9 tebi == pow2(9,40) == 9*1024^4
ans = '9 Ti'

###公制前缀###

大小| 符号/名称1000^-8 | y / yocto
1000^-7 | z / zepto
1000^-6 | a / atto
1000^-5 | f / femto
1000^-4 | p / pico
1000^-3 | n / nano
1000^-2 | µ / micro
1000^-1 | m / milli
1000^0 |
1000^1 | k / kilo
1000^2 | M / mega
1000^3 | G / giga
1000^4 | T / tera
1000^5 | P / peta
1000^6 | E / exa
1000^7 | Z / zetta
1000^8 | Y / yotta

###二进制前缀(IEC 60027-2 A.2和ISO / IEC 80000-13:2008)###

大小| 符号/名称1024^0 |
1024^1 | Ki / kibi
1024^2 | Mi / mebi
1024^3 | Gi / gibi
1024^4 | Ti / tebi
1024^5 | Pi / pebi
1024^6 | Ei / exbi
1024^7 | Zi / zebi
1024^8 | Yi / yobi

完整资料领取请阅读全文

未经允许不得转载!Matlab将数字值转换为指标前缀字符串(SI /工程)【含Matlab源码】