Error using bitxor Matrix dimensions must agree. key1=bitxor(a,b);and key=imresize(key1,[1 256])

1 visualizzazione (ultimi 30 giorni)
%key generation
a=uint16(dec2bin(sud1));
b=uint16(dec2bin(sud2,8));
key1=bitxor(a,b);
key=imresize(key1,[1 256])

Risposta accettata

Roger Stafford
Roger Stafford il 11 Mar 2016
Modificato: Roger Stafford il 11 Mar 2016
As you have written the code, the numbers of elements in 'a' and in 'b' depend on how many bits are required to represent 'sud1' and 'sud2', respectively. It is very easy for these to be different, in which case 'bitxor' would give you an error. You need to use the form 'dec2bin(d,n)' for both quantities in which n is the same in both and large enough to guarantee that there will be exactly n bits in each string. For example, if sud1 = 1234 and sud2 = 12345, then n = 14 would cause both strings to have 14 bits, (even though 'a' would have 3 leading zeros beyond the minimum 11 it needs.)

Più risposte (0)

Categorie

Scopri di più su Entering Commands in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by