- 締切済み
MATLABでHEXからbinaryさらにベクトルへの変換について
MATLABで例えばh'FFをb'11111111に変換した後、これをベクトル [1 1 1 1 1 1 1 1]に変換する効率の良い方法教えてください
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- sgwjn
- ベストアンサー率70% (47/67)
回答No.2
#01です。 そうですか。すみませんでした。 とすると、ループで回すのが一番でしょうか。 h = 'FF'; b = dec2bin(hex2dec(h)); for i = 1:length(b) ans(i) = str2num(b(i)); end 以下のように1行で書けなくも無いですが、分かりにくいですし、処理も遅くなると思います。 h = 'FF'; b = dec2bin(hex2dec(h)); ans = str2num(reshape(cat(1, b, repmat(' ', size(b))), 1, length(b) * 2));
- sgwjn
- ベストアンサー率70% (47/67)
回答No.1
h = 'FF'; b = dec2bin(hex2dec(h)); ans = str2num(sscanf(b, '%c')); 現在環境が手元に無いので、動作は確認していません。 もし動かなければ指摘してください。
質問者
補足
残念ながら、実行の結果ベクトルではなく 11111111 のdecimal値でした
お礼
どちらでも、正しい結果が得られました 大変ありがとうございました