Info

Cette question est clôturée. Rouvrir pour modifier ou répondre.

how to solve index exceeds dimensions

1 vue (au cours des 30 derniers jours)
Ayesha Punjabi
Ayesha Punjabi le 6 Juin 2019
Clôturé : MATLAB Answer Bot le 20 Août 2021
a is 1*80 bit matrix
b is 1*16 matrix. This remains same. All the 16 binary bits in b remains same
code is 1*16 matrix. Code variable changes and selects diffierent 16 binary bits. Each time it has random, different selection of binary bits.
bits = 5;
gain = 16;
for p = 1:bits
for m = 1:gain
position=m+(p-1)*gain;
a(position) = xor(b(position),code(m));
end
end
I am getting index exceeds dimensions error in a(position) = xor(b(position),code(m)); the idea is to put 1st xor(b and code) in first 16 bits of a, in 2nd run next xor(b and code) in 17-31 columns of a and so on.
Kindly help in solving the error.
  1 commentaire
KSSV
KSSV le 7 Juin 2019
In the loop position = 17. And you have b, code as 1x16...so obviously you will get this error.

Réponses (1)

Debasish Samal
Debasish Samal le 7 Juin 2019
In the line a(position) = xor(b(position),code(m));
The variable 'position' should not be used for indexing into b as it will exceed the size of b when m>1.
replace 'position' by m. That should solve the issue.
a(position) = xor(b(m),code(m));
Good Luck!

Community Treasure Hunt

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

Start Hunting!

Translated by