无符号 整数 与 逻辑 数组 互转 Unsigned Integer to and from Logical Array

バージョン 1.0.1 (41.8 KB) 作成者: 埃博拉酱
本包可以将逻辑数组拼合为无符号整数,以及将无符号整数展开为逻辑数组
ダウンロード: 7
更新 2021/9/8

MATLAB定点设计器扩展,依赖MATLAB Fixed-Point Designer和埃博拉酱的MATLAB扩展

本项目的发布版本号遵循语义化版本规范。开发者认为这是一个优秀的规范,并向每一位开发者推荐遵守此规范。

目录

为避免命名冲突,本包所有函数均在命名空间FixedPoint下,使用前需import:

import FixedPoint.*

Logical2UInteger

将逻辑数组拼合为无符号整数

load('+FixedPoint\Logical.mat');
%将256×8 logical每行合并成一个uint8数值,变成256×1 uint8
FixedPoint.Logical2UInteger(Logical,2);
%合并成2个uint4类型(依赖MATLAB定点设计器fi类型)
FixedPoint.Logical2UInteger(Logical,2,UIntegerBits=4);

本函数将逻辑数组沿指定维度拼合成无符号整数,低位在前高位在后。例如[1 1 1 1 0 0 0 0;0 0 0 0 1 1 1 1]可以沿第2维拼接成一个uint8列向量[15;240],或者uint4矩阵[15 0;0 15]。基本数据类型uint8, uint16, uint32, uint64以外的整数类型,将使用embedded.fi类实现

输入参数

LogicalArray logical,必需,要拼合的逻辑数组

Dimension(1,1)uint8,可选,拼合维度。默认采用LogicalArray的最长维度

UIntegerBits(1,1)uint8=size(LogicalArray,Dimension),名称值,整数位数。如果size(LogicalArray,Dimension)不能被UIntegerBits整除,将补0至能整除为止。

返回值

UIntegerArray,拼合成的数值数组。如果UIntegerBits为8、16、32或64,将对应返回uint8, uint16, uint32, uint64类型数组。除此之外的值,将返回embedded.fi类型数组,其WordLength和SumWordLength属性值均等于UIntegerBits。数组的尺寸,在Dimension维度以外和LogicalArray相等,Dimension维度长度等于ceil(size(LogicalArray,Dimension)/UIntegerBits)

UInteger2Logical

将无符号整数展开为逻辑数组

FixedPoint.UInteger2Logical((0:255)');

本函数将无符号整数沿指定维度展开成逻辑数组,低位在前高位在后。例如uint8列向量[15;240]可以沿第2维展开成[1 1 1 1 0 0 0 0;0 0 0 0 1 1 1 1]。支持embedded.fi类型展开。

输入参数

UIntegerArray,必需,要展开的无符号整数组

Dimension,可选,展开维度。默认采用最短维度。

返回值

LogicalArray logical,展开的逻辑数组。在Dimension以外维度尺寸和UIntegerArray相同,在Dimension维度尺寸等于size(UIntegerArray,Dimension)乘上数据类型的位数。如uint8类型为8位,numerictype(false,9,0)类型为9位

引用

埃博拉酱 (2024). 无符号 整数 与 逻辑 数组 互转 Unsigned Integer to and from Logical Array (https://github.com/Silver-Fang/FixedPoint-Designer/releases/tag/v1.0.1), GitHub. に取得済み.

MATLAB リリースの互換性
作成: R2021a
すべてのリリースと互換性あり
プラットフォームの互換性
Windows macOS Linux
タグ タグを追加

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

+FixedPoint

バージョン 公開済み リリース ノート
1.0.1

See release notes for this release on GitHub: https://github.com/Silver-Fang/FixedPoint-Designer/releases/tag/v1.0.1

1.0.0

この GitHub アドオンでの問題を表示または報告するには、GitHub リポジトリにアクセスしてください。
この GitHub アドオンでの問題を表示または報告するには、GitHub リポジトリにアクセスしてください。