How do perform negation on binary values using matlab?
Mostra commenti meno recenti
for example given input is = 10011011 i need negation of only MSB bit therefore the result should be =00011011 how can this be performed using MATLAB
3 Commenti
the cyclist
il 20 Feb 2014
Modificato: the cyclist
il 20 Feb 2014
What is the variable type? Is it a character string?
Image Analyst
il 20 Feb 2014
Is this any different than your prior post http://www.mathworks.com/matlabcentral/answers/116422-how-to-perform-cancatenation-of-binary-numbers-using-matlab?
yeshwini
il 21 Feb 2014
Risposte (2)
the cyclist
il 20 Feb 2014
Here is one way, if the input is a character string:
char(num2str(x'=='0'))'
I feel that there must be a better way, and I am just being dumb.
1 Commento
Alejandro Mesa Dame
il 26 Lug 2021
god-tier solution. thanks king.
the cyclist
il 20 Feb 2014
char('a'-x);
where x is your input string.
5 Commenti
David Young
il 20 Feb 2014
the cyclist
il 21 Feb 2014
The synergy was quite deliberate on my part. If you would like to enter this as a solution yourself, I will happily delete this one, to give you the credit.
David Young
il 21 Feb 2014
I realised that it was deliberate - and effective! I put a solution on Cody, no need to change anything.
yeshwini
il 21 Feb 2014
the cyclist
il 21 Feb 2014
'a' is the character string for the letter 'a'. This is a nice trick to "subtract" your string x from the ASCII character 'a', which gives you what you want.
So, if
x = '0110';
y = char('a'-x);
will result in y having the value '1001'.
Categorie
Scopri di più su Characters and Strings in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!