You can make this play up in other languages as well, but you might need a different approach. Here is a C# version that performs the trick with the Ceiling function:

static void Main(string[] args)
{
double a = Math.Ceiling(-0.1);
double b = 1 * 0;
double c = -1 * 0;
Console.WriteLine("a = Math.Ceiling(-0.1), a=" + a.ToString());

byte[] bytes;
bytes = BitConverter.GetBytes(a);
Console.WriteLine("Bytes of a:");
Console.WriteLine(BitConverter.ToString(bytes));

Console.WriteLine("b = 1 * 0, b=" + b.ToString());
bytes = BitConverter.GetBytes(b);
Console.WriteLine("Bytes of b:");
Console.WriteLine(BitConverter.ToString(bytes));

Console.WriteLine("c = -1 * 0, c=" + c.ToString());
bytes = BitConverter.GetBytes(c);
Console.WriteLine("Bytes of c:");
Console.WriteLine(BitConverter.ToString(bytes));
}

Output:

a = Math.Ceiling(-0.1), a=0
Bytes of a:
00-00-00-00-00-00-00-80
b = 1 * 0, b=0
Bytes of b:
00-00-00-00-00-00-00-00
c = -1 * 0, c=0
Bytes of c:
00-00-00-00-00-00-00-00