【问题标题】:writing bit sequence in ASCII format MATLAB以 ASCII 格式编写位序列 MATLAB
【发布时间】:2014-05-22 09:25:03
【问题描述】:

我正在尝试在 Matlab 中以紧凑格式编写一些位序列来测试我的 golomb-rice 压缩代码。这是对 C 代码的测试。这在 Matlab 中有点“伪装”,因为进行位操作没有意义。但这是为了测试。我有类似'10111'的东西,想把它写到一个字符到一个文本文件中,然后看看我实现了什么压缩。我找不到在 matlab 中将位序列写入 ASCII 的方法。有什么帮助吗?

【问题讨论】:

  • 澄清一下:例如对于'01100001',您想将'a' 写入文本文件吗?

标签: matlab ascii bit


【解决方案1】:

据我了解,您希望将1s 和0s 保存为“二进制”格式,而不是由字符“1”和“0”组成的文本。下面是一个示例:

filename = 'test.bin';
x = randi([0 1], 1, 10*8);
fid = fopen(filename, 'w');
fwrite(fid, x, 'ubit1');

'ubit1' 标志告诉fwrite 函数将向量x 解释为1 位数字。

在上面的示例中,生成的文件大小正好是 10 字节。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-04
    • 1970-01-01
    • 2018-12-31
    相关资源
    最近更新 更多