Problem is not to use bits, problem is to cache the value on some forwards that may not be reliable depending on what others plugins do, as revive a player without sending a reliable message/function, or kill a player without any notifiaction to other plugins.
That's why is_user_alive check is better.
Also, FindEntityInSphere returns entities indexes higher than players indexes, higher than 32.
When you perform the check IsUserAlive with such indexes, you "transform" that ent index in a mask so check can return 1, that's why you shouldn't use bits.