These values are colored differently, as they are used in two different types - BOOL and bool and are different language constructs.
BOOL is a macro re-definition of signed char, which means it can have more than two values, and while the mapping is NO/FALSE == 0, YES/TRUE == 1, you have to be careful when writing boolean expressions and treat any non-zero value as true. Values that can be assigned to BOOL are defined as macros and are colored accordingly.
Meanwhile, bool on the other hand is a true boolean type and can have only two values - true and false. Its values are native language constructs and are colored as such.
Here are some other SO discussions of this topic:
http://stackoverflow.com/questions/615702/is-there-a-difference-between-yes-no-true-false-and-true-false-in-objective-c
http://stackoverflow.com/questions/541289/objective-c-bool-vs-bool