首页 > 解决方案 > 在 Matlab 中使用二进制数作为标量

问题描述

我正在使用一个使用二进制基数的 MATLAB 函数。为此,它使用该函数dec2bin将整数转换为包含二进制信息的 char 数组。问题是我打算使用 HDL Coder 来生成函数的 HDL 版本。该过程的一个步骤是将变量转换为固定点。当数据是标量时,这可以自动完成,那么有没有办法在不使用向量的情况下管理二进制数?

标签: matlabhdlhdl-coder

解决方案


dec2bin仅用于显示目的。数字始终使用二进制表示存储在计算机中。您可以使用函数 bitandbitorbitxorbitcmpbitshiftbitgetbitset 对整数进行按位操作:

>> a = uint32(7);
>> b = uint32(12);
>> bitand(a, b)
ans =
  uint32
   4

(单击上面的函数名称以获取文档。您也可以help bitand在 MATLAB 中阅读较短版本的文档或doc bitand阅读完整的文档。)


推荐阅读