I've been looking into some ICs now. Some of them have the calculated result (data) in twos complement form, placed in register to be read by other IC. What is the logic behind converting the data to twos complement form before its read?
Examples are as
- Analog to digital converter (Page 30 Output Data Format). LINK
- Digital Accelerometer (Page 1 General Description). LINK
I have seen similar behavior in CRC calculation for IEEE 802.3. For example if we calculate the 32-bit CRC (using x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x+1 polynomial) the calculated CRC is bit reversed and complemented before transmission.
Well the question is why is it formatted in complement form? Can't it be read without the data being complemented?