Binary to character function?
24 views (last 30 days)
Show older comments
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 Comments
Erik Dekelbaum
on 24 Nov 2014
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.
Answers (2)
Guillaume
on 24 Nov 2014
- 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 Comments
Walter Roberson
on 12 Jun 2021
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
on 25 Nov 2014
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 Comments
Star Strider
on 25 Nov 2014
From the documentation (for R2014b):
str = dec2bin(d,n) produces a binary representation with at least n bits.
See Also
Categories
Find more on Data Type Conversion in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!