PHP, 39 38 bytes
##no comparison operators
no comparison operators
<?=($n=$argv[1])&PHP_INT_MIN?-1:1-!$n;
should work on most systems.
PHP_INT_MIN
has only one bit set: the most significant one. If this is set in the input, it is negative.
!$n
(cast to integer by the subtraction) evaluates to 0
for positive values and 1
for 0
.
lame solution, 30 bytes
<?=($n=$argv[1])?abs($n)/$n:0;
works also on floats.