Haluan muuttaa signed char muuttujan unsigned char:ksi.
Tyyppimuunnoksessa esim. 0xFF (-1 unsigned) tulisi muunnoksen jälkeen olla 1. 0XFE tulisi muunnoksen jälkeen olla 2 jne...
Kun taas positiivinen puoli (01111111111) tulisi sisältää oikean positiivisen arvon, eli 0x79 olisi 121.
Tyyppimuunnoksessa esim. 0xFF (-1 unsigned) tulisi muunnoksen jälkeen olla 1. 0XFE tulisi muunnoksen jälkeen olla 2 jne...
Kun taas positiivinen puoli (01111111111) tulisi sisältää oikean positiivisen arvon, eli 0x79 olisi 121.
Vastaukset 2
Vanhimmat
int abs ( int n ); /* */
unsigned char SignedChar2UnsignedChar(signed char m) {
if(m & 0x80)
m = ~m 1;
return (unsigned char)m;
}
oletan, että ne on kahden komplementteja
http://en.wikipedia.org/wiki/Two's_complement