Convert unsigned char in C to MatLab

Viewed 376

I am trying to convert unsigned char in C to matlab code, the vector of unsigned char is filled with hexadecimal values. Below the C code:

int main()
{
  unsigned char value = 0xaa;
  signed char temp;
  // cast to signed value
  temp = (signed char) value;
  // if MSB is 1, then this will signed extend and fill the temp variable with 1's
  temp = temp >> 7;
  // AND with the reduction variable
  temp = temp & 0x1b;
  // finally shift and reduce the value
  printf("%u",((value << 1)^temp));
}

The Matlab function that I create to do the same thing:

value = '0xaa';
temp = int8(value);
temp2 = int8(value);
temp = bitsra(temp,7);
temp = and(temp,'0x1b');
galois_value =   xor(bitsll(temp2,1),temp);
disp(galois_value);

The values printed are different in each code, someone knows what is happening?

1 Answers
Related