binary to decimal conversion
9 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
anika hossain
am 16 Sep. 2015
Kommentiert: Walter Roberson
am 17 Sep. 2015
i have an array wr(i,j) that is 256X8 in binary. now i need to convert it to decimal. so after conversion the size should be 16x16. i am using bi2de() function but i am unsuccessful to do it. how can i do it?
0 Kommentare
Akzeptierte Antwort
Guillaume
am 17 Sep. 2015
Bearbeitet: Guillaume
am 17 Sep. 2015
Note that in theory, conversions to string and back are much slower than purely manipulating numbers. With matlab treating numbers as double by default, it may not save you anything but I would consider bypassing the usage of strings and dec2bin altogether. The code would be:
wr = false(256, 8); %predeclare array for better performance
for row = 1:256 %avoid using i and j, they're functions defined by matlab
for col = 1:8
wr(row, col) = round(RU(4, 4, m)) == calc; %no need for if either. just logical assignment
end
end
wr = sum(bsxfun(@times, 2.^(7:-1:0), wr), 2);
wr = reshape(wr, [16 16]); %not sure why you want to do that.
4 Kommentare
Guillaume
am 17 Sep. 2015
Well, the whole idea is to never go near a char, as string manipulations are typically order of magnitude slower than just numbers.
Weitere Antworten (1)
Kirby Fears
am 16 Sep. 2015
Bearbeitet: Kirby Fears
am 16 Sep. 2015
Hi Anika,
I used the following code to convert a 16x16 matrix to binary (256x8) and back with no problems. Please check that you are calling the bin2dec function correctly and wr(i,j) is a "char" array of 1's and 0's. It would help if you post your code, your binary array, and your error message.
m=225*ones(16);
mb=dec2bin(m);
m2=bin2dec(mb);
6 Kommentare
Walter Roberson
am 17 Sep. 2015
No, bin2dec converts N x M arrays to column arrays of length N. You need to reshape() the result to whatever size you want.
Siehe auch
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!