【问题标题】:matlab: How to convert a vector of complex double elements to a vector of 24bit (each element)?matlab:如何将复数双精度元素的向量转换为 24 位(每个元素)的向量?
【发布时间】:2017-06-05 09:23:29
【问题描述】:

matlab:如何将复双元素的向量转换为24bit(每个元素)的向量? (利用实部为 12 位,虚部为 12 位的事实)

我的尝试:

fileOpen=fopen('newFile.txt');
fprintf(fileOpen, '%d,\r\n', real(complexNum)+((imag(complexNum))*(2^12))));
fclose(fileOpen);

【问题讨论】:

  • MATLAB 中没有 24 位数值类型。你想要的结果到底是什么?请阅读How to Ask 以及如何提供minimal reproducible example
  • @beaker 如果我需要一个 24 位的数据输出,怎么做?
  • 以实际数字的形式提供一些样本输入和预期输出
  • 我使用了你的代码,它给了我你要求的结果。当然,我的输入文件只包含小于 4096 的实部和虚部整数,并且我期望 [0,16777215] 范围内的 ASCII 格式整数作为输出。如果您的输入和/或所需输出不同,您必须让我们知道它们是什么。

标签: matlab converter


【解决方案1】:

请参见此处了解数据类型:https://www.mathworks.com/help/matlab/numeric-types.html

似乎不支持 24 位操作。当然,这是意料之中的,因为 Matlab 是那些“非常”高级语言之一。

根据您的描述。用 C 语言从头开始不是更好吗?

或者,查看此链接:parse text file in MATLAB

【讨论】:

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