How do perform negation on binary values using matlab?
Ältere Kommentare anzeigen
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 Kommentare
the cyclist
am 20 Feb. 2014
Bearbeitet: the cyclist
am 20 Feb. 2014
What is the variable type? Is it a character string?
Image Analyst
am 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
am 21 Feb. 2014
Antworten (2)
the cyclist
am 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 Kommentar
Alejandro Mesa Dame
am 26 Jul. 2021
god-tier solution. thanks king.
the cyclist
am 20 Feb. 2014
char('a'-x);
where x is your input string.
5 Kommentare
David Young
am 20 Feb. 2014
the cyclist
am 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
am 21 Feb. 2014
I realised that it was deliberate - and effective! I put a solution on Cody, no need to change anything.
yeshwini
am 21 Feb. 2014
the cyclist
am 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'.
Kategorien
Mehr zu Characters and Strings finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!