TIP: Click on subject to list as thread! ANSI
echo: visual_basic
to: All
from: Dan.
date: 2004-06-06 17:27:00
subject: Re: the OR operator

yep, i get it now. thanks for your help.

"Randy Day"  a écrit dans le message de
news:40C1EB4B.FF7BAC0A{at}sasktel.nex...
> "Dan." wrote:
> >
> > hi, i'm sorry to bother you; but i was wondering what the function of
the OR
> > operator was in terms of numbers:
> >
> >     num0 = num1 or num2
> >
>
> Think of it in terms of the actual bits used by
> the computer. Any bit position that has a 1 in
> either input number will have a 1 in the output
> number:
>
> num1 1011 (11) 0000 (0)
> num2 OR 0110  (6)   OR  0110 (6)
> ---- ----
> num0 1111 (15) 0110 (6)
>
> AND works the opposite; any bit position that
> doesn't have both 1's will output 0:
>
> 1011 (11) 1111 (15)
>    AND 0000  (0)  AND 0010  (2)
> ---- ----
> 0000  (0) 0010  (2)
>
> --------------------------------------------
>
> 'Bitmasking', as it's called, can be useful if
> you have a lot of yes/no type data to store
> really compactly.
>
> Let's say we have an 8-bit variable CarData;
> each bit can represent some feature that is
> or is not found on a particular car:
>
> stock/enhanced CD player------
> sport package---------------  |
> power steering------------  | |
> power door locks--------  | | |
> convertible-----------  | | | |
> turbocharger--------  | | | | |
> leather seats-----  | | | | | |
> ABS-------------+ | | | | | | |
> 0 0 0 0 0 0 0 0
>
> Let's say we have a car with a stock CD player
> (its CarData bit 1 is 0), and we want to indicate
> that it now has the enhanced player (bit 1 = 1).
> BUT, we don't want any other car info to change!
>
> if CarData and 1 = 0 then 'test the value of bit 1
>   CarData = CarData or 1 'CarData bit 1 is now 1
> end if
>
> This is how you set a single bit to zero without
> changing any other bits - AND it with a zero bit:
>
> 10000101 (133)
>   AND 11111110 (254)
> --------
> 10000100 (132)
>
> if CarData and 1 = 1 then
>   CarData= CarData and 254 'only the value of bit 1 changes
> end if
>
>
>
> Clear as mud?  ;-)
---
þ RIMEGate(tm)/RGXPost V1.14 at BBSWORLD * Info{at}bbsworld.com

---
 * RIMEGate(tm)V10.2áÿ* RelayNet(tm) NNTP Gateway * MoonDog BBS
 * RgateImp.MoonDog.BBS at 6/6/04 5:27:05 PM
* Origin: MoonDog BBS, Brooklyn,NY, 718 692-2498, 1:278/230 (1:278/230)
SEEN-BY: 633/267 270
@PATH: 278/230 10/345 106/1 2000 633/267

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.