Azzera filtri
Azzera filtri

How to store all the datas of a txt file in some given bits?

1 visualizzazione (ultimi 30 giorni)
I have a txt like this:
9,15,5,10,14,5,11,15,5,7,19,0,4,22,0
7,8,7,10,8,4,11,7,0,9,12,7,11,11,0
each row has 15 data values; actually it's a set of 5 points with three atrributions.
such as, the first point is (9,15,5),9 and 15 are x and y direction of a point, 5 is the orientation,
I want to use 4 bits to store x and y, 3 bits to store orientation.
and then store all the data after transformation in a new txt file.
The sample of my data is in the attachment.
Anyone know how to solve it?
Thank you so much.
  2 Commenti
dpb
dpb il 20 Gen 2019
What is the fi function?
As far as column-major order, simply transpose your array to turn rows to columns.
Jiajie Zhang
Jiajie Zhang il 21 Gen 2019
fi function can change the storige size of the data.
But things are much much complicated than just using transpose.
Do you know how to solve my problem?

Accedi per commentare.

Risposte (1)

Walter Roberson
Walter Roberson il 21 Gen 2019
bits11 = uint16(x) * 128 + uint16(y) * 8 + uint16(orientatation);
However if you want to pack together the 11 bit quantities into words you would need 8 of them together, which would put together 8 such sets of data into 11 bytes. That is a bit more of a nuisance.

Categorie

Scopri di più su Data Types in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by