Input dialog boxes accepts binary bit sequence

3 ビュー (過去 30 日間)
Lorrenzo Francis
Lorrenzo Francis 2019 年 3 月 13 日
コメント済み: Lorrenzo Francis 2019 年 3 月 14 日
After entering a binary bit sequence in an input dialog box, I'm having issues when I try to convert it to a numeric value. When the str2num function is used, the leading zeros are erased. Below is my code:
prompt = {'Enter bit sequence (max 8 bits):'};
ititle = 'Input';
dims = [1 35];
temp1 = inputdlg(prompt,ititle,dims);
temp2 = str2num(temp1{1});
bit_sequence = str2num(num2str(temp2).');
disp(bit_sequence)
If the input is 0110, the output is
1
1
0
I would like to know how to keep the leading zero.

採用された回答

Brian Hart
Brian Hart 2019 年 3 月 13 日
Hi Lorrenzo,
MATLAB doesn't support binary representation. So when you run the above code, MATLAB thinks the value in temp2 is one-hundred-ten, not six.
To get the numerical value, try
>> temp2 = bin2dec(temp1{1});
Then to display the value as binary, try
>> disp(dec2bin(temp2,4))
where the "4" tells MATLAB how many bits to display.
  1 件のコメント
Lorrenzo Francis
Lorrenzo Francis 2019 年 3 月 14 日
Thank you so much Brian.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

製品


リリース

R2016a

Community Treasure Hunt

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

Start Hunting!

Translated by