Binary to character function?
27 次查看(过去 30 天)
显示 更早的评论
So far I have this function:
function char2bin
char=input('Enter a character: ', 's');
char2=(dec2bin(char))
sprintf('%08s',char2)
which takes in a character, and converts it into a vector of 8 0's and 1's, forced to be 8 with the '%08s' thingy.
Next, I need to make a function which will:
1. Convert the vector of bits to a vector ASCII numbers (0 becomes 48, 1 becomes 49).
2. Convert the vector of ASCII numbers to a character string (use the char function).
3. Use the bin2dec function to convert the string into a single ASCII number.
4. Convert the ASCII number into a character.
and I have no idea where to start with that, any help would be great, thank you in advance!
3 个评论
Erik Dekelbaum
2014-11-24
It might. Try making a new function where the output is the input vector of bits + 1. Then check the new output variable in the workspace. If the values are all incremented by 1, you know it worked.
回答(2 个)
Guillaume
2014-11-24
- simply use double(somestring) to get the ASCII values of the character
- to reverse that operation: char(asciivalues)
- doesn't make sense to me
- see 2.
7 个评论
Walter Roberson
2021-6-12
out1 = char2bin('Hello, Usha!')
out2 = bin2char(out1)
function binvec = char2bin(charinput)
binvec = reshape((dec2bin(charinput,8) - '0').',1,[]);
end
function origchar = bin2char(binvec)
origchar = char(reshape(bin2dec(reshape(char(binvec + '0'),8,[]).'),1,[]));
end
Image Analyst
2014-11-25
See my latest answer in your original question: http://www.mathworks.com/matlabcentral/answers/163995#comment_251754 I think it does what you want. For example you can send in '123abc' and it will return
strAscii =
011000101100100110011110000111000101100011
asciiLogicalArray =
Columns 1 through 29
0 1 1 0 0 0 1 0 1 1 0 0 1 0 0 1 1 0 0 1 1 1 1 0 0 0 0 1 1
Columns 30 through 42
1 0 0 0 1 0 1 1 0 0 0 1 1
2 个评论
Star Strider
2014-11-25
From the documentation (for R2014b):
str = dec2bin(d,n) produces a binary representation with at least n bits.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Type Conversion 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!