krotka metoda do wypisania liczby bitowo

0

Chcialem napisac metode drukujaca liczbe w postaci bitowej (32)

static void printBinary(int val) {
        for (int i = 31; i <=0; i--) {
            int mask = 1 << i;
            System.out.print(val & mask);
        }
    }

Cos tu jest ewidentnie bardzo zle, ale nie wiem co. Robie maske z 1 na 32 pozycji, pozniej 31 itd. i chce wyswietlic to w koniunkcji bitowej z val. Co robie zle?

0

@AnyKtokolwiek: wlasnie o to chodzi ze nic ;//

0
lukaswz napisał(a):

@AnyKtokolwiek: wlasnie o to chodzi ze nic ;//

i >= 0 co mi się rzuciło w oczy do poprawienia.
sorry, ani razu się nie wykona z tym błedem

0

@AnyKtokolwiek: oki, po zmianie znaku juz ogarnalem, jeszcze trzeba bylo dac przesuniecie z powrotem o i w prawo

static void printBinary(int val) {
        for (int i = 31; i >=0; i--) {
            int mask = (1 << i);
            System.out.print((val & mask) >> i);
        }
    }

dzieki

1 użytkowników online, w tym zalogowanych: 0, gości: 1