How to do xor operation in cell arrays?

3 visualizaciones (últimos 30 días)
Darsana P M
Darsana P M el 21 de Nov. de 2017
Comentada: Darsana P M el 21 de Nov. de 2017
Suppose,
A={'d9' '31'};
B={'42' '83'};
The expected output is:
Y={'42' '83'}
My input will not be the same always. So,how can I write a useful matlab code for each inputs?
  6 comentarios
Darsana P M
Darsana P M el 21 de Nov. de 2017
I am extremely sorry,it was my mistake. The Y result is {'9b' 'b2'}. But using those methods, I am getting a matrix value. Which is the best method for XOR operation, among all those, so that i get the required output.
Darsana P M
Darsana P M el 21 de Nov. de 2017
Editada: Walter Roberson el 21 de Nov. de 2017
I tried this method, but I got the output as a matrix. I need the answer as hexa decimal values?? What should I do?

Iniciar sesión para comentar.

Respuesta aceptada

Guillaume
Guillaume el 21 de Nov. de 2017
If you start with a cell array of hexadecimal char arrays and want the same back:
cellfun(@(a,b) dec2hex(bitxor(hex2dec(a), hex2dec(b))), A, B, 'UniformOutput', false)
However, you would make your life easier if instead of a cell array you used a simple 2D char matrix for input and output:
A = ['d9';
'31']
B = ['42';
'83']
Y = dec2hex(bitxor(hex2dec(A), hex2dec(B)))
  1 comentario
Darsana P M
Darsana P M el 21 de Nov. de 2017
Thank you so much sir. This was the answer that I wanted.

Iniciar sesión para comentar.

Más respuestas (1)

Walter Roberson
Walter Roberson el 21 de Nov. de 2017
Earlier, I showed you how to do the xor on character vectors. From this you can see how to do the xor operation.
Early this morning, I showed you how to do addition with cell arrays. From this you can see how to extract inputs from cell arrays of character vectors and how to output back to cell arrays.
Now just put those two operations together. Use the data import and output from the addition code and use the xor from the xor code.

Categorías

Más información sobre Data Type Conversion en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by