当前位置:  开发笔记 > 编程语言 > 正文

将二进制值转换为十进制矩阵

如何解决《将二进制值转换为十进制矩阵》经验,为你挑选了1个好方法。

假设我有一个矩阵a = [1 3; 4 2],我使用以下代码将此矩阵转换为二进制格式:

a=magic(2)
y=dec2bin(a,8)
e=str2num(y(:))';

结果是:

  y =

00000001
00000100
00000011
00000010


e =

Columns 1 through 17

 0     0     0     0     0     0     0     0     0     0     0     0     0         0     0     0     0

Columns 18 through 32

 0     0     0     0     1     0     0     0     0     1     1     1     0        1     0

现在,当我想要恢复原始矩阵时,我将函数反转:

  s=num2str(e(:))';
  r=bin2dec(s)

我得到的结果是:

r =

    1082

我该怎么做才能获得原始矩阵?不是数字先谢谢你



1> GameOfThrows..:

你正在做额外的过程,破坏了原来的结构:

a=magic(2)
y=dec2bin(a,8)
r=bin2dec(y)

这里r是你的答案,因为y已经删除了a的矩阵结构.要重新创建矩阵,您需要:

originalmatrix = reshape(r,size(a))

originalmatrix =

 1     3
 4     2

推荐阅读
k78283381
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有