It's like the difference between
$_ = 'a\tb\n';
$_ = "a\tb\n";
in that \t and \n are each two characters long in the first case
and each a single character in the second case.
When you put a backslash before "x00" in a double quoted string
in your program, perl converts the group of four characters into
a single byte. When you build a string or use single quotes,
the conversion does not happen; the four characters remain
four separate characters.