## Bitwise Operators

Helpful script writing tricks and HowTo's
jNizM
Posts: 2320
Joined: 30 Sep 2013, 01:33
GitHub: jNizM
Contact:

### Bitwise Operators

Bitwise Operators

`& - bitwise and| - bitwise or^ - bitwise xor~ - bitwise not<< - bitwise shift left>> - bitwise shift right`

Bitwise AND [BitAnd] &

Bitwise OR [BitOr] |

Bitwise EXCLUSIVE OR [BitXor] ^

Bitwise NOT [BitNot] ~
` HEX | Bits--------┼--------------------~ 0x99 | 1 0 0 1 1 0 0 1 = | 0x66 | 0 1 1 0 0 1 1 0--------┴--------------------MsgBox, % ~ 0x99 ;output: 0x66 (102)`

Bitwise SHIFT LEFT [BitShiftLeft] <<

Bitwise SHIFT RIGHT [BitShiftRight] >>

Bitwise ROTATE LEFT
` HEX | Bits--------┼-------------------- 0x03 | 1 1 0 0 0 0 0 0 RoL | RoL= 0x81 | 1 0 0 0 0 0 0 1--------┴--------------------`

Bitwise ROTATE RIGHT
` HEX | Bits--------┼-------------------- 0xC0 | 0 0 0 0 0 0 1 1 RoR | RoR= 0x81 | 1 0 0 0 0 0 0 1--------┴--------------------`

- AHK.help - Operators
- Wikipedia - Bitwise operation
- C++ Tutorial: Bitwise Operators
- Low Level Bit Hacks You Absolutely Must Know
- bithacks.h - bit hacks header file
- Understanding Bitwise Operators

Todo:
- more explanations
- more examples
- |= &= ^= >>= <<=
- ...

BitRotate
a << b | (a & 0xFFFFFFFF) >> (32-b)
Last edited by jNizM on 17 Mar 2014, 06:16, edited 11 times in total.
[AHK] 1.1.29.01 x64 Unicode | [WIN] 10 Pro (Version 1803) x64 | [GitHub] Profile
nnnik
Posts: 3188
Joined: 30 Sep 2013, 01:01
Location: Germany

### Re: Bitwise Operators

a^b=(a&b)^(a|b)
Recommends AHK Studio

### Who is online

Users browsing this forum: No registered users and 5 guests