MATLAB中de2bi和hex2dec函数

本文详细介绍了MATLAB中的de2bi函数将十进制转二进制及右侧/左侧最高有效位处理,同时涵盖hex2dec函数将十六进制转十进制的用法。通过实例演示,便于理解和记忆这两个基本的数值转换工具。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

查阅MATLAB自带的帮助文档其实已经能很清楚了,这里还是记录一下,方便忘了之后能很快再捡起来这个知识点。

de2bi函数

功能上,de2bi函数被用于将十进制数字转化为二进制数。且转化后结果矩阵的每一行都与原输入矩阵中的元素相对应。

在转化规则上还是有点说道的:

>> E = [12;5]

E =

    12
     5

>> A = de2bi(E )

A =

     0     0     1     1
     1     0     1     0

由于de2bi函数默认的输出结果是右侧为最高位,即帮助文档中所谓的:Right-MSB——右侧为最高有效位,因此对于A的结果:第一行为0011,逆序后就是1100,正好是E中第一个元素12的二进制表示。

  • (1100)2 = (12)10

同理,A的第二行1010,逆序后就是0101,是E中第二个元素5的二进制表示。

  • (0101)2 = (5)10
>> B = de2bi(E,5)

B =

     0     0     1     1     0
     1     0     1     0     0

在后面添加一个参数a,就是把输出二进制矩阵中的元素扩展为a位。

>> C = de2bi(E,[],3) 

C =

     0     1     1
     2     1     0

这里是将de2bi输出的元素转换为3进制。“定义将小数元素转换到哪个基”

  • (110)3 = (12)10
>>  D = de2bi(E,5,'left-msb')

D =

     0     1     1     0     0
     0     0     1     0     1

经过上面的解释,这句话就不难理解了:将十进制的E矩阵转化为2进制矩阵,每个二进制扩展为5位,且采用左侧为最高有效位。

hex2dec

功能上,hex2dec将十六进制数的字符串转换为十进制整数。
对于 D = hex2dec(H) ,如果H是一个字符数组,hex2dec将每一行都看作一个十六进制数。
如果H是字符向量的单元格数组或字符串数组,hex2dec将每个元素都看作一个十六进制数。

且,与ascii码的大小写区分不同,hex2dex函数大小写不敏感:

>> hex2dec('A')

ans =

    10

>> hex2dec('a')

ans =

    10
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值