[ Pobierz całość w formacie PDF ]
.Operatory logiczneOperatory logiczne -podstawyW poprzednim numerze VBMagazine Doogie opisa³ operatory logiczne.Niestety wœród nass¹ osoby pocz¹tkuj¹ce, które nie za bardzo zrozumia³y ten tekst.Dlategopostanowi³em napisaæ jakby wprowadzenie, które ulatwi zrozumienie tamtego tekstu.Awiêc zaczynamy:Operatory logiczne operuj¹ na bitach.Hmmm no dobrze, ale dlaczego pisz¹c takikawa³ek kodu:Dim Q As ByteQ = 100MsgBox Not (Q)Otrzymujê wartoœæ 155 ??? Co ma to wspólnego z bitami ??? Otó¿ ma i to wiele.Ka¿d¹ liczbê w systemie dziesiêtnym da siê zapisaæ w systemie dwójkowym.Systememdwójkowym pos³uguj¹ siê komputery.System dwójkowy sk³ada siê z 2 liczb: 0 i 1.Np.liczba 100 w systemie dwójkowym wygl¹da: (0)1100100 (pocz¹tkowe zero mo¿emy pomin¹æ,ale przy ró¿nych operacjach jest onow uwzglêdniane).Nie bêdê tutaj uczy³, jakprzekszta³caæ liczby z systemu dziesiêtnego na dwójkowy, bo jest to trudne.Poza tymmo¿esz ³atwo to zrobiæ uruchamiaj¹c Windowsowy kalkulator i z menu Widok wybierzprofesionalny.Potem wpisz jak¹œ liczbê np 100 i kliknij na opcjê bin (option button).Prawda, ¿e jest to proste ? Powracaj¹c do naszego problemu informujê, ¿e w programiezadeklarowaliœmy zmienn¹ Byte.Zmienna byte zajmuje w pamiêci 8 bitów i przyjmujewartoœci z zakresu 0-255.Operacja Not polega na zamienie bitów na przeciwne (1 na 0 a 0na 1).Hmm myœlê, ¿e zrozumiesz to na przyk³¹dzie:liczba 100 zapisana w systemie dwójkowym wygl¹da:111Po zanegowaniu czyli zamianie 1 na 0 i zero na 1 otrzymujemy binarn¹ liczbê11111Liczba 10011011 w przeliczeniu na system dziesiêtny to w³aœnie 155.Podwójnanegacja (zanegowanie zanegowanej liczby) powoduje, ¿e otrzymamy liczbê przed negacj¹.Czyli neguj¹c 155 otrzymasz 100.Prawda, ¿e proste ? No, a teraz inna instrukcja OR.Instrukcja OR ju¿ wymaga dwóch parametrów, gdy¿podaj¹c 2 liczby otrzymujemy jedn¹.Jest to tak zwana suma logiczna.Obie liczby musz¹byc tego samego typu.Oto przyk³adowy kawa³ek kodu:Dim Q1 As Byte, Q2 As ByteQ1 = 100Q2 = 200MsgBox Q1 Or Q2Wynikiem jest liczba 236.11001000111111Liczba 236 binarnie wygl¹da tak:1110110011111Jak sobie przypomnimy tabelkê, to 0 otrzymujemy, gdy oba bity wynosz¹ 0.Najpierwporównujemy pierwszy bit, 0 i 1 czyli 1.Potem drugi 1 i 1 czyli 1.Trzeci to 1 i 0 czyli1.Czwarty to 0 i 0 czyli 0.I tak dalej. Mam nadziejê, ¿e dziêki temu tekstowi zrozumia³eœ co nieco.Jeœli nic nierozumiesz to nie martw siê, ¿e instrukcje s¹ stosowane bardzo rzadko.Jelcyn
[ Pobierz całość w formacie PDF ]