September 2017
Beginner to intermediate
290 pages
6h 58m
English
This group contains instructions for bitwise logical operations which you, being a developer, already know. These are NOT, OR, XOR, and AND operations. However, while high-level languages do make a difference between bitwise and logical operators (for example, bitwise AND (&) and logical AND (&&) in C), they are all the same on the Assembly level and are quite commonly used in conjunction with the EFlags register (or RFlags on 64-bit systems).
For example, consider the following simple snippet in C that checks for a specific bit being set and conditionally executes certain code:
if(my_var & 0x20){ // do something if true}else{ // do something else otherwise}
It may be implemented in Assembly like this:
and dword [my_var], ...
Read now
Unlock full access