Most efficient way to convert from binary to dec without bin2dec or bi2de

11 Ansichten (letzte 30 Tage)
Is there a faster way to acomplish the following? The idea is to have an array of 5 bit inputs and convert each sequence of bits into a decimal.
p = [1 1 0 0 1; 1 0 0 0 1]
x = 2
[m n] = size(p);
y = zeros(m, 1);
for ii = 1:m
y(ii) = polyval(p(ii,:),x)
end
I want to be able to input 300,000 rows and 16 columns and eventually 32 or even 64 columns.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 5 Jul. 2019
sum(p.*(2.^(size(p,2)-1:-1:0)),2)
  1 Kommentar
John D'Errico
John D'Errico am 6 Jul. 2019
With only the minor caveat that if you have more than 52 bits, it will fail, since the result will be in the form of a double.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Data Type Conversion finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by