use strict; use warnings; print unsigned_shift(-4, 2), "\n"; print signed_shift(-4, 2), "\n"; print unsigned_shift(-4, 2), "\n"; print signed_shift(-4, 2), "\n"; print unsigned_shift(-4, 2), "\n"; print signed_shift(-4, 2), "\n"; sub signed_shift { use integer; return $_[0] >> $_[1]; } sub unsigned_shift { return $_[0] >> $_[1]; }