Istvan

java bitwise operators

Jun 6th, 2012
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.81 KB | None | 0 0
  1. class BitwiseAND {
  2.     public static void main(String args[]) {
  3.        
  4.         // ***********************
  5.         // ****** hozzáadás ******
  6.         // ***********************
  7.         int b = 0;
  8.        
  9.         // A hozzáadás olyan mint a "vagy egyenlő" |=
  10.         // tehát átalakítja binárissá a két összevagyolni kívánt számot.
  11.         // Ha a két összehasonlított szám közül
  12.         // az egyikben az aktuális helyi értéken 1 van akkor egyet ír.
  13.         // Miután végigmegy a bitsoron visszaalakítja az eredményt.
  14.        
  15.         // Csak négyzetszámokat szabad írni mert:
  16.         // 1 -> 1
  17.         // 2 -> 10
  18.         // a = (1 |= 2) -> a = 11
  19.         // a |= 3 -> 11 és itt a hiba mert a-t összevagyoltam
  20.         // hárommal és ugyanúgy 11 lett mert 3 binárisan 11.
  21.         // Ezért szabad csak 1,2,4,8 négyzetszámokat használni.
  22.        
  23.         System.out.println("1 b értéke: " + b);
  24.         b |= 0x01;
  25.         System.out.println("2 b értéke: " + b);
  26.         b |= 0x02;
  27.         System.out.println("3 b értéke: " + b);
  28.         b |= 0x04;
  29.         System.out.println("4 b értéke: " + b);
  30.        
  31.         // ***********************
  32.         // *** összehasonlítás ***
  33.         // ***********************
  34.        
  35.         // Átalakítja a számot binárissá és összeéseli bitenként. Ami annyit jelent
  36.         // hogy az aktuális helyi értéken ha egyes és egyes van akkor egyest ír.
  37.         // Ha egyes és nulla van akkor nullát ír.
  38.         // A végén a kapott bitsort visszaalakítja tizessé.
  39.         // Ha ugyanazt a számot kapjuk mint amivel összehasonlítottuk az  azt jelenti
  40.         // hogy ugyanoda írtunk egyest.
  41.        
  42.         System.out.println(0x01 & 0x01);
  43.         System.out.println(b & 0x01);
  44.         System.out.println(b & 0x02);
  45.         System.out.println(b & 0x04);
  46.        
  47.         System.out.println(b & (0x04));
  48.        
  49.         // ***********************
  50.         // ******* levonás *******
  51.         // ***********************
  52.         // b &=~ 0x01;
  53.         // System.out.println("b értéke: " + b);
  54.     }
  55. }
Advertisement
Add Comment
Please, Sign In to add comment