how can select a specific bits from logical vectors !

3 visualizzazioni (ultimi 30 giorni)
Hi , i need your help please ,
i have vector contains hex numbers such as :(16-bits)
(0000 0011 1100 0000)
i need select the middel bits from ( b7-b10) then read its as decimal asuch as = 15
i alraedy did that as in the code , but the problem is just work with last row in the vector for my data base ('address.xlsx')! this data base contains 16 rows!
i need find and stor the resuts as vecotr for all my data base numbers not just last elment!
clc;
clear all;
[~,~,dat]= xlsread('address.xlsx');
num=dat(:,1);
for n=1:numel(num)
b=hex2dec ([dat(:,1)]);
b1 = hex2dec('000fff0');
% b = hex2dec ('6e206b'); % for example its work with one elemnt
format hex;
x=bitand(b1,b);
cc=dec2hex(x);
bin=hexToBinaryVector(cc);
ccz=bin((end-flip(7:10)+1));% how can expand this term for all vector!
bp=num2str(ccz);
bp11= bp(find(~isspace(bp)));
v1= bin2dec(bp11);
end

Risposta accettata

Divya Gaddipati
Divya Gaddipati il 23 Ott 2019
Hi,
Making the following changes to your code will solve the issue:
  • Line - 6
b = hex2dec(dat{n}); % since the variable “dat” is a cell array
  • Line - 16
v1{n} = bin2dec(bp11) % since you want to store the result of every element

Più risposte (0)

Prodotti


Release

R2016b

Community Treasure Hunt

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

Start Hunting!

Translated by