필터 지우기
필터 지우기

Shift array bitwise and multiply with another array in matlab

조회 수: 2 (최근 30일)
POKA
POKA 2017년 10월 29일
댓글: KL 2017년 10월 29일
Hello All,
I have two arrays for i.e
x=[1,2,3,4];
y=[5,6,7,8];
I want to multiply y with x
and sum the results after
every bit shift excluding
first one.
So result would be in this
order
R1=70 % no bit shift
R2=64 % y= 8 5 6 7
R3=61 % y= 7 8 5 6
..... Till all bit shifted
And finally plot all
result.
How can I achieve this .
Please suggest .
Thanks all of you

채택된 답변

KL
KL 2017년 10월 29일
편집: KL 2017년 10월 29일
use circshift
R = sum(x.*y)
R1 = sum(x.*circshift(y,1))
R2 = sum(x.*circshift(y,2)) % and so on
  댓글 수: 2
POKA
POKA 2017년 10월 29일
But for lengthy array say length of 1023 how to use it . shall I use loop
KL
KL 2017년 10월 29일
Yes, or you can let matlab run the loop in the background. For example,
shiftAmount = 0:size(y,2);
R = arrayfun(@(z) sum(x.*circshift(y,z)),shiftAmount)

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Matrix Indexing에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by