Hello friends,
I need help in comparision of 32 bit signed numbers.
I am generating random signed numbers using some logic & when i am doing addition of two numbers i am getting maximum value 0X80000000.
how to avoid this?
Example:#
-
use strict ;
-
-
my $a;
-
my $b;
-
my $result;
-
-
$range = 2**31; # 2^(n-1): n=32
-
$min = -2**31; #lowest integer
-
$val= int(rand($range)) + $min;
-
print "$val\n"
-
-
$a = $val;
-
$b = $val;
-
$result = $a+$b;
-
In the above example, $result will overflow i.e exceeds the range 0x8000000 after addition of two signed numbers, & am getting result as 0x8000000 only, in order to avoid this what i need to do?
Thanks
Raghavendra