binary to ascii converting
現在この質問をフォロー中です
- フォローしているコンテンツ フィードに更新が表示されます。
- コミュニケーション基本設定に応じて電子メールを受け取ることができます。
エラーが発生しました
ページに変更が加えられたため、アクションを完了できません。ページを再度読み込み、更新された状態を確認してください。
古いコメントを表示
0 投票
Hi, how can I convert a 96 bit binary string to the 8-bit ascii? I should find a sentence
採用された回答
Star Strider
2020 年 1 月 1 日
編集済み: Star Strider
2020 年 1 月 1 日
Try this:
binstr = char(randi([0 1]+'0', 1, 96)); % Create (Random) Binary Character Vector
binstr8 = reshape(binstr, [], 8); % Reshape To (12x8) Character Array
binmtx = bin2dec(binstr8); % Convert Binary Character Array To Decimal Column Vector
chrmtx = char(binmtx); % Convert Decimal Column Vector To Character Column Vector
You can combine these into one line if you want to. I kept them separate to demonstrate how the code works.
EDIT — (1 Jan 2020 at 18:13)
chrmtx = @(x) char(bin2dec(reshape(x(:).',[],8))); % One-Line Anonymous Function Version Of This Code
Out = chrmtx(binstr);
10 件のコメント
homa maleki
2020 年 1 月 1 日
thank you for helping ,
this is my answer for a question and I should change this to the ascii 8bit text
result = "010010010111001101101110001001110111010000100000011100000111001001101111011000100110000101100010011010010110110001101001011101000111100100100000011001110111001001100101011000010111010000111111"
I couldnt find answer with your code
Image Analyst
2020 年 1 月 1 日
binstr = '010010010111001101101110001001110111010000100000011100000111001001101111011000100110000101100010011010010110110001101001011101000111100100100000011001110111001001100101011000010111010000111111'
% binstr = char(randi([0 1]+'0', 1, 96)); % Create (Random) Binary Character Vector
binstr8 = reshape(binstr, [], 8) % Reshape To (12x8) Character Array
binmtx = bin2dec(binstr8) % Convert Binary Character Array To Decimal Column Vector
chrmtx = char(binmtx) % Convert Decimal Column Vector To Character Column Vector
Worked for me. What did you do differently?
Star Strider
2020 年 1 月 1 日
One change to ‘binstr8’:
binstr8 = reshape(binstr(:), 8, []).'; % Reshape To (12x8) Character Array
and one change to ‘Out’:
Out = char(binmtx).' % Convert Decimal Column Vector To Character Column Vector
produces:
Out =
'Isn't probability great?'
Similar changes to the ‘chrmtx’ function:
chrmtx = @(x) char(bin2dec(reshape(x(:),8,[]).')).';
Out = chrmtx(binstr)
produces the same output.
homa maleki
2020 年 1 月 1 日
Error using reshape
Product of known dimensions, 8, not divisible into total number of elements, 1.
and binstr8 gives me 24x8 matrix
Walter Roberson
2020 年 1 月 1 日
Is your x a character vector, or is it a string() object? When you display it, does it show up surrounded by ' quotes such as 'abc' or does it show up surrounded by " quotes like "abc" ?
Star Strider
2020 年 1 月 1 日
@homa maleki —
Change ‘binstr8’ to:
binstr8 = reshape(char(binstr(:)), 8, []).'; % Reshape To (12x8) Character Array
and:
chrmtx = @(x) char(bin2dec(reshape(char(x(:)),8,[]).')).'; % One-Line Anonymous Function Version Of This Code
This illustrates the problem of not having your data to work with at the outset.
homa maleki
2020 年 1 月 1 日
its by "quotes
Star Strider
2020 年 1 月 1 日
homa maleki
2020 年 1 月 1 日
Thank you so much it is working now
Star Strider
2020 年 1 月 1 日
My pleasure.
If my Answer helped you solve your problem, please Accept it!
その他の回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Characters and Strings についてさらに検索
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
