2 bit binary signal to numerical value

조회 수: 4 (최근 30일)
Yusuf Dhoda
Yusuf Dhoda 2019년 10월 7일
댓글: Yusuf Dhoda 2019년 10월 24일
I have a 32768x2 double array that contains a 2 bit binary signal. I want to convert this 2 bit binary signal to a value between 1 and -1. For example:
01 ----- 1
00 ----- 0.5
10 ----- -0.5
11 ----- -1
I want to store the results in a 32768x1 array
Thank you

채택된 답변

Deepak Kumar
Deepak Kumar 2019년 10월 10일
편집: Deepak Kumar 2019년 10월 10일
Try the below code. It should work fine.
clc
clear all
a=your_array; %Assign your array to the vaiable 'a'
L=size(a,1);%Get number of rows in a
d=bi2de(a,'left-msb'); %Convert binary vectors to decimal numbers with 1st column as MSB. use, d=bi2de(a) if you want 1st column as LSB
for i=1:L
switch d(i)
case 1
b(i)=1;
case 0
b(i)=.5;
case 2
b(i)=-.5;
case 3
b(i)=-1;
end
end
b=b'; % Final answer
  댓글 수: 1
Yusuf Dhoda
Yusuf Dhoda 2019년 10월 24일
Thank you very much for your help. The code worked well

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

추가 답변 (0개)

카테고리

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

Community Treasure Hunt

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

Start Hunting!

Translated by