Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: Byte invertieren / 1.Bit= 8.Bit, 2. Bit=7.Bit , usw. Kategorie: Programmierung (von Wolf - 20.04.2003 23:30)
Als Antwort auf Byte invertieren / 1.Bit= 8.Bit, 2. Bit=7.Bit , usw. von Wolf - 20.04.2003 21:57

Habe es gerade hinbekommen. Zwar nicht elegant, aber es klappt.
Meine Lösung sieht so aus:

function conv(byte orig) returns byte
{
byte neu;
neu = 0;
// 8.Bit
if orig > 0b01111111
 {orig = orig - 0b10000000;
  neu = neu + 0b10000000;}
neu = neu shr 1;
// 7.Bit
if orig > 0b00111111
 {orig = orig - 0b01000000;
  neu = neu + 0b10000000;}
neu = neu shr 1;
// 6.Bit
if orig > 0b00011111
 {orig = orig - 0b00100000;
  neu = neu + 0b10000000;}
neu = neu shr 1;
// 5.Bit
if orig > 0b00001111
 {orig = orig - 0b00010000;
  neu = neu + 0b10000000;}
neu = neu shr 1;
// 4.Bit
if orig > 0b00000111
 {orig = orig - 0b00001000;
  neu = neu + 0b10000000;}
neu = neu shr 1;
// 3.Bit
if orig > 0b00000011
 {orig = orig - 0b00000100;
  neu = neu + 0b10000000;}
neu = neu shr 1;
// 2.Bit
if orig > 0b00000001
 {orig = orig - 0b00000010;
  neu = neu + 0b10000000;}
neu = neu shr 1;
// 1.Bit
if orig > 0b00000000
 {orig = orig - 0b00000001;
  neu = neu + 0b10000000;}
return neu;
}

Geht das nicht viel einfacher??

GruÃ?,
Wolf


    Antwort schreiben


Antworten:

Re: Byte invertieren / 1.Bit= 8.Bit, 2. Bit=7.Bit , usw. (von André H. - 21.04.2003 8:47)