Let me tell you about the system where null and 0 are treated as equal because in some programming languages will coerce null to 0. It just so happens that for an important business type in this system:
the range of the type is the non-negative integers up to (2^32)-1
semantically, the value cannot be null
when the value is 0, the code treats it as a special case
the range of the type is the non-negative integers up to (2^32)-1
semantically, the value cannot be null
when the value is 0, the code treats it as a special case
null is treated as 0