mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-17 02:13:54 +00:00
library/int8.m:
library/int16.m:
library/int32.m:
Implement abs/1, unchecked_abs/1 and nabs/1 for int8, in16 and int32.
tests/hard_coded/arith_int{8,16,32}.{m,exp}:
Extend these tests to cover abs and nabs.
795 lines
15 KiB
Plaintext
795 lines
15 KiB
Plaintext
*** Test unary operation '+' ***
|
|
|
|
+ -2147483648 = -2147483648
|
|
+ -32768 = -32768
|
|
+ -128 = -128
|
|
+ 0 = 0
|
|
+ 1 = 1
|
|
+ 2 = 2
|
|
+ 8 = 8
|
|
+ 10 = 10
|
|
+ 16 = 16
|
|
+ 127 = 127
|
|
+ 32767 = 32767
|
|
+ 2147483647 = 2147483647
|
|
|
|
*** Test unary operation '-' ***
|
|
|
|
- -2147483648 = -2147483648
|
|
- -32768 = 32768
|
|
- -128 = 128
|
|
- 0 = 0
|
|
- 1 = -1
|
|
- 2 = -2
|
|
- 8 = -8
|
|
- 10 = -10
|
|
- 16 = -16
|
|
- 127 = -127
|
|
- 32767 = -32767
|
|
- 2147483647 = -2147483647
|
|
|
|
*** Test unary operation 'abs' ***
|
|
|
|
abs -2147483648 = <<exception>>
|
|
abs -32768 = 32768
|
|
abs -128 = 128
|
|
abs 0 = 0
|
|
abs 1 = 1
|
|
abs 2 = 2
|
|
abs 8 = 8
|
|
abs 10 = 10
|
|
abs 16 = 16
|
|
abs 127 = 127
|
|
abs 32767 = 32767
|
|
abs 2147483647 = 2147483647
|
|
|
|
*** Test unary operation 'nabs' ***
|
|
|
|
nabs -2147483648 = -2147483648
|
|
nabs -32768 = -32768
|
|
nabs -128 = -128
|
|
nabs 0 = 0
|
|
nabs 1 = -1
|
|
nabs 2 = -2
|
|
nabs 8 = -8
|
|
nabs 10 = -10
|
|
nabs 16 = -16
|
|
nabs 127 = -127
|
|
nabs 32767 = -32767
|
|
nabs 2147483647 = -2147483647
|
|
|
|
*** Test binary operation '+' ***
|
|
|
|
-2147483648 + -2147483648 = 0
|
|
-2147483648 + -32768 = 2147450880
|
|
-2147483648 + -128 = 2147483520
|
|
-2147483648 + 0 = -2147483648
|
|
-2147483648 + 1 = -2147483647
|
|
-2147483648 + 2 = -2147483646
|
|
-2147483648 + 8 = -2147483640
|
|
-2147483648 + 10 = -2147483638
|
|
-2147483648 + 16 = -2147483632
|
|
-2147483648 + 127 = -2147483521
|
|
-2147483648 + 32767 = -2147450881
|
|
-2147483648 + 2147483647 = -1
|
|
-32768 + -2147483648 = 2147450880
|
|
-32768 + -32768 = -65536
|
|
-32768 + -128 = -32896
|
|
-32768 + 0 = -32768
|
|
-32768 + 1 = -32767
|
|
-32768 + 2 = -32766
|
|
-32768 + 8 = -32760
|
|
-32768 + 10 = -32758
|
|
-32768 + 16 = -32752
|
|
-32768 + 127 = -32641
|
|
-32768 + 32767 = -1
|
|
-32768 + 2147483647 = 2147450879
|
|
-128 + -2147483648 = 2147483520
|
|
-128 + -32768 = -32896
|
|
-128 + -128 = -256
|
|
-128 + 0 = -128
|
|
-128 + 1 = -127
|
|
-128 + 2 = -126
|
|
-128 + 8 = -120
|
|
-128 + 10 = -118
|
|
-128 + 16 = -112
|
|
-128 + 127 = -1
|
|
-128 + 32767 = 32639
|
|
-128 + 2147483647 = 2147483519
|
|
0 + -2147483648 = -2147483648
|
|
0 + -32768 = -32768
|
|
0 + -128 = -128
|
|
0 + 0 = 0
|
|
0 + 1 = 1
|
|
0 + 2 = 2
|
|
0 + 8 = 8
|
|
0 + 10 = 10
|
|
0 + 16 = 16
|
|
0 + 127 = 127
|
|
0 + 32767 = 32767
|
|
0 + 2147483647 = 2147483647
|
|
1 + -2147483648 = -2147483647
|
|
1 + -32768 = -32767
|
|
1 + -128 = -127
|
|
1 + 0 = 1
|
|
1 + 1 = 2
|
|
1 + 2 = 3
|
|
1 + 8 = 9
|
|
1 + 10 = 11
|
|
1 + 16 = 17
|
|
1 + 127 = 128
|
|
1 + 32767 = 32768
|
|
1 + 2147483647 = -2147483648
|
|
2 + -2147483648 = -2147483646
|
|
2 + -32768 = -32766
|
|
2 + -128 = -126
|
|
2 + 0 = 2
|
|
2 + 1 = 3
|
|
2 + 2 = 4
|
|
2 + 8 = 10
|
|
2 + 10 = 12
|
|
2 + 16 = 18
|
|
2 + 127 = 129
|
|
2 + 32767 = 32769
|
|
2 + 2147483647 = -2147483647
|
|
8 + -2147483648 = -2147483640
|
|
8 + -32768 = -32760
|
|
8 + -128 = -120
|
|
8 + 0 = 8
|
|
8 + 1 = 9
|
|
8 + 2 = 10
|
|
8 + 8 = 16
|
|
8 + 10 = 18
|
|
8 + 16 = 24
|
|
8 + 127 = 135
|
|
8 + 32767 = 32775
|
|
8 + 2147483647 = -2147483641
|
|
10 + -2147483648 = -2147483638
|
|
10 + -32768 = -32758
|
|
10 + -128 = -118
|
|
10 + 0 = 10
|
|
10 + 1 = 11
|
|
10 + 2 = 12
|
|
10 + 8 = 18
|
|
10 + 10 = 20
|
|
10 + 16 = 26
|
|
10 + 127 = 137
|
|
10 + 32767 = 32777
|
|
10 + 2147483647 = -2147483639
|
|
16 + -2147483648 = -2147483632
|
|
16 + -32768 = -32752
|
|
16 + -128 = -112
|
|
16 + 0 = 16
|
|
16 + 1 = 17
|
|
16 + 2 = 18
|
|
16 + 8 = 24
|
|
16 + 10 = 26
|
|
16 + 16 = 32
|
|
16 + 127 = 143
|
|
16 + 32767 = 32783
|
|
16 + 2147483647 = -2147483633
|
|
127 + -2147483648 = -2147483521
|
|
127 + -32768 = -32641
|
|
127 + -128 = -1
|
|
127 + 0 = 127
|
|
127 + 1 = 128
|
|
127 + 2 = 129
|
|
127 + 8 = 135
|
|
127 + 10 = 137
|
|
127 + 16 = 143
|
|
127 + 127 = 254
|
|
127 + 32767 = 32894
|
|
127 + 2147483647 = -2147483522
|
|
32767 + -2147483648 = -2147450881
|
|
32767 + -32768 = -1
|
|
32767 + -128 = 32639
|
|
32767 + 0 = 32767
|
|
32767 + 1 = 32768
|
|
32767 + 2 = 32769
|
|
32767 + 8 = 32775
|
|
32767 + 10 = 32777
|
|
32767 + 16 = 32783
|
|
32767 + 127 = 32894
|
|
32767 + 32767 = 65534
|
|
32767 + 2147483647 = -2147450882
|
|
2147483647 + -2147483648 = -1
|
|
2147483647 + -32768 = 2147450879
|
|
2147483647 + -128 = 2147483519
|
|
2147483647 + 0 = 2147483647
|
|
2147483647 + 1 = -2147483648
|
|
2147483647 + 2 = -2147483647
|
|
2147483647 + 8 = -2147483641
|
|
2147483647 + 10 = -2147483639
|
|
2147483647 + 16 = -2147483633
|
|
2147483647 + 127 = -2147483522
|
|
2147483647 + 32767 = -2147450882
|
|
2147483647 + 2147483647 = -2
|
|
|
|
*** Test binary operation '-' ***
|
|
|
|
-2147483648 - -2147483648 = 0
|
|
-2147483648 - -32768 = -2147450880
|
|
-2147483648 - -128 = -2147483520
|
|
-2147483648 - 0 = -2147483648
|
|
-2147483648 - 1 = 2147483647
|
|
-2147483648 - 2 = 2147483646
|
|
-2147483648 - 8 = 2147483640
|
|
-2147483648 - 10 = 2147483638
|
|
-2147483648 - 16 = 2147483632
|
|
-2147483648 - 127 = 2147483521
|
|
-2147483648 - 32767 = 2147450881
|
|
-2147483648 - 2147483647 = 1
|
|
-32768 - -2147483648 = 2147450880
|
|
-32768 - -32768 = 0
|
|
-32768 - -128 = -32640
|
|
-32768 - 0 = -32768
|
|
-32768 - 1 = -32769
|
|
-32768 - 2 = -32770
|
|
-32768 - 8 = -32776
|
|
-32768 - 10 = -32778
|
|
-32768 - 16 = -32784
|
|
-32768 - 127 = -32895
|
|
-32768 - 32767 = -65535
|
|
-32768 - 2147483647 = 2147450881
|
|
-128 - -2147483648 = 2147483520
|
|
-128 - -32768 = 32640
|
|
-128 - -128 = 0
|
|
-128 - 0 = -128
|
|
-128 - 1 = -129
|
|
-128 - 2 = -130
|
|
-128 - 8 = -136
|
|
-128 - 10 = -138
|
|
-128 - 16 = -144
|
|
-128 - 127 = -255
|
|
-128 - 32767 = -32895
|
|
-128 - 2147483647 = 2147483521
|
|
0 - -2147483648 = -2147483648
|
|
0 - -32768 = 32768
|
|
0 - -128 = 128
|
|
0 - 0 = 0
|
|
0 - 1 = -1
|
|
0 - 2 = -2
|
|
0 - 8 = -8
|
|
0 - 10 = -10
|
|
0 - 16 = -16
|
|
0 - 127 = -127
|
|
0 - 32767 = -32767
|
|
0 - 2147483647 = -2147483647
|
|
1 - -2147483648 = -2147483647
|
|
1 - -32768 = 32769
|
|
1 - -128 = 129
|
|
1 - 0 = 1
|
|
1 - 1 = 0
|
|
1 - 2 = -1
|
|
1 - 8 = -7
|
|
1 - 10 = -9
|
|
1 - 16 = -15
|
|
1 - 127 = -126
|
|
1 - 32767 = -32766
|
|
1 - 2147483647 = -2147483646
|
|
2 - -2147483648 = -2147483646
|
|
2 - -32768 = 32770
|
|
2 - -128 = 130
|
|
2 - 0 = 2
|
|
2 - 1 = 1
|
|
2 - 2 = 0
|
|
2 - 8 = -6
|
|
2 - 10 = -8
|
|
2 - 16 = -14
|
|
2 - 127 = -125
|
|
2 - 32767 = -32765
|
|
2 - 2147483647 = -2147483645
|
|
8 - -2147483648 = -2147483640
|
|
8 - -32768 = 32776
|
|
8 - -128 = 136
|
|
8 - 0 = 8
|
|
8 - 1 = 7
|
|
8 - 2 = 6
|
|
8 - 8 = 0
|
|
8 - 10 = -2
|
|
8 - 16 = -8
|
|
8 - 127 = -119
|
|
8 - 32767 = -32759
|
|
8 - 2147483647 = -2147483639
|
|
10 - -2147483648 = -2147483638
|
|
10 - -32768 = 32778
|
|
10 - -128 = 138
|
|
10 - 0 = 10
|
|
10 - 1 = 9
|
|
10 - 2 = 8
|
|
10 - 8 = 2
|
|
10 - 10 = 0
|
|
10 - 16 = -6
|
|
10 - 127 = -117
|
|
10 - 32767 = -32757
|
|
10 - 2147483647 = -2147483637
|
|
16 - -2147483648 = -2147483632
|
|
16 - -32768 = 32784
|
|
16 - -128 = 144
|
|
16 - 0 = 16
|
|
16 - 1 = 15
|
|
16 - 2 = 14
|
|
16 - 8 = 8
|
|
16 - 10 = 6
|
|
16 - 16 = 0
|
|
16 - 127 = -111
|
|
16 - 32767 = -32751
|
|
16 - 2147483647 = -2147483631
|
|
127 - -2147483648 = -2147483521
|
|
127 - -32768 = 32895
|
|
127 - -128 = 255
|
|
127 - 0 = 127
|
|
127 - 1 = 126
|
|
127 - 2 = 125
|
|
127 - 8 = 119
|
|
127 - 10 = 117
|
|
127 - 16 = 111
|
|
127 - 127 = 0
|
|
127 - 32767 = -32640
|
|
127 - 2147483647 = -2147483520
|
|
32767 - -2147483648 = -2147450881
|
|
32767 - -32768 = 65535
|
|
32767 - -128 = 32895
|
|
32767 - 0 = 32767
|
|
32767 - 1 = 32766
|
|
32767 - 2 = 32765
|
|
32767 - 8 = 32759
|
|
32767 - 10 = 32757
|
|
32767 - 16 = 32751
|
|
32767 - 127 = 32640
|
|
32767 - 32767 = 0
|
|
32767 - 2147483647 = -2147450880
|
|
2147483647 - -2147483648 = -1
|
|
2147483647 - -32768 = -2147450881
|
|
2147483647 - -128 = -2147483521
|
|
2147483647 - 0 = 2147483647
|
|
2147483647 - 1 = 2147483646
|
|
2147483647 - 2 = 2147483645
|
|
2147483647 - 8 = 2147483639
|
|
2147483647 - 10 = 2147483637
|
|
2147483647 - 16 = 2147483631
|
|
2147483647 - 127 = 2147483520
|
|
2147483647 - 32767 = 2147450880
|
|
2147483647 - 2147483647 = 0
|
|
|
|
*** Test binary operation '*' ***
|
|
|
|
-2147483648 * -2147483648 = 0
|
|
-2147483648 * -32768 = 0
|
|
-2147483648 * -128 = 0
|
|
-2147483648 * 0 = 0
|
|
-2147483648 * 1 = -2147483648
|
|
-2147483648 * 2 = 0
|
|
-2147483648 * 8 = 0
|
|
-2147483648 * 10 = 0
|
|
-2147483648 * 16 = 0
|
|
-2147483648 * 127 = -2147483648
|
|
-2147483648 * 32767 = -2147483648
|
|
-2147483648 * 2147483647 = -2147483648
|
|
-32768 * -2147483648 = 0
|
|
-32768 * -32768 = 1073741824
|
|
-32768 * -128 = 4194304
|
|
-32768 * 0 = 0
|
|
-32768 * 1 = -32768
|
|
-32768 * 2 = -65536
|
|
-32768 * 8 = -262144
|
|
-32768 * 10 = -327680
|
|
-32768 * 16 = -524288
|
|
-32768 * 127 = -4161536
|
|
-32768 * 32767 = -1073709056
|
|
-32768 * 2147483647 = 32768
|
|
-128 * -2147483648 = 0
|
|
-128 * -32768 = 4194304
|
|
-128 * -128 = 16384
|
|
-128 * 0 = 0
|
|
-128 * 1 = -128
|
|
-128 * 2 = -256
|
|
-128 * 8 = -1024
|
|
-128 * 10 = -1280
|
|
-128 * 16 = -2048
|
|
-128 * 127 = -16256
|
|
-128 * 32767 = -4194176
|
|
-128 * 2147483647 = 128
|
|
0 * -2147483648 = 0
|
|
0 * -32768 = 0
|
|
0 * -128 = 0
|
|
0 * 0 = 0
|
|
0 * 1 = 0
|
|
0 * 2 = 0
|
|
0 * 8 = 0
|
|
0 * 10 = 0
|
|
0 * 16 = 0
|
|
0 * 127 = 0
|
|
0 * 32767 = 0
|
|
0 * 2147483647 = 0
|
|
1 * -2147483648 = -2147483648
|
|
1 * -32768 = -32768
|
|
1 * -128 = -128
|
|
1 * 0 = 0
|
|
1 * 1 = 1
|
|
1 * 2 = 2
|
|
1 * 8 = 8
|
|
1 * 10 = 10
|
|
1 * 16 = 16
|
|
1 * 127 = 127
|
|
1 * 32767 = 32767
|
|
1 * 2147483647 = 2147483647
|
|
2 * -2147483648 = 0
|
|
2 * -32768 = -65536
|
|
2 * -128 = -256
|
|
2 * 0 = 0
|
|
2 * 1 = 2
|
|
2 * 2 = 4
|
|
2 * 8 = 16
|
|
2 * 10 = 20
|
|
2 * 16 = 32
|
|
2 * 127 = 254
|
|
2 * 32767 = 65534
|
|
2 * 2147483647 = -2
|
|
8 * -2147483648 = 0
|
|
8 * -32768 = -262144
|
|
8 * -128 = -1024
|
|
8 * 0 = 0
|
|
8 * 1 = 8
|
|
8 * 2 = 16
|
|
8 * 8 = 64
|
|
8 * 10 = 80
|
|
8 * 16 = 128
|
|
8 * 127 = 1016
|
|
8 * 32767 = 262136
|
|
8 * 2147483647 = -8
|
|
10 * -2147483648 = 0
|
|
10 * -32768 = -327680
|
|
10 * -128 = -1280
|
|
10 * 0 = 0
|
|
10 * 1 = 10
|
|
10 * 2 = 20
|
|
10 * 8 = 80
|
|
10 * 10 = 100
|
|
10 * 16 = 160
|
|
10 * 127 = 1270
|
|
10 * 32767 = 327670
|
|
10 * 2147483647 = -10
|
|
16 * -2147483648 = 0
|
|
16 * -32768 = -524288
|
|
16 * -128 = -2048
|
|
16 * 0 = 0
|
|
16 * 1 = 16
|
|
16 * 2 = 32
|
|
16 * 8 = 128
|
|
16 * 10 = 160
|
|
16 * 16 = 256
|
|
16 * 127 = 2032
|
|
16 * 32767 = 524272
|
|
16 * 2147483647 = -16
|
|
127 * -2147483648 = -2147483648
|
|
127 * -32768 = -4161536
|
|
127 * -128 = -16256
|
|
127 * 0 = 0
|
|
127 * 1 = 127
|
|
127 * 2 = 254
|
|
127 * 8 = 1016
|
|
127 * 10 = 1270
|
|
127 * 16 = 2032
|
|
127 * 127 = 16129
|
|
127 * 32767 = 4161409
|
|
127 * 2147483647 = 2147483521
|
|
32767 * -2147483648 = -2147483648
|
|
32767 * -32768 = -1073709056
|
|
32767 * -128 = -4194176
|
|
32767 * 0 = 0
|
|
32767 * 1 = 32767
|
|
32767 * 2 = 65534
|
|
32767 * 8 = 262136
|
|
32767 * 10 = 327670
|
|
32767 * 16 = 524272
|
|
32767 * 127 = 4161409
|
|
32767 * 32767 = 1073676289
|
|
32767 * 2147483647 = 2147450881
|
|
2147483647 * -2147483648 = -2147483648
|
|
2147483647 * -32768 = 32768
|
|
2147483647 * -128 = 128
|
|
2147483647 * 0 = 0
|
|
2147483647 * 1 = 2147483647
|
|
2147483647 * 2 = -2
|
|
2147483647 * 8 = -8
|
|
2147483647 * 10 = -10
|
|
2147483647 * 16 = -16
|
|
2147483647 * 127 = 2147483521
|
|
2147483647 * 32767 = 2147450881
|
|
2147483647 * 2147483647 = 1
|
|
|
|
*** Test binary operation '/' ***
|
|
|
|
-2147483648 / -2147483648 = 1
|
|
-2147483648 / -32768 = 65536
|
|
-2147483648 / -128 = 16777216
|
|
-2147483648 / 0 = <<exception>>
|
|
-2147483648 / 1 = -2147483648
|
|
-2147483648 / 2 = -1073741824
|
|
-2147483648 / 8 = -268435456
|
|
-2147483648 / 10 = -214748364
|
|
-2147483648 / 16 = -134217728
|
|
-2147483648 / 127 = -16909320
|
|
-2147483648 / 32767 = -65538
|
|
-2147483648 / 2147483647 = -1
|
|
-32768 / -2147483648 = 0
|
|
-32768 / -32768 = 1
|
|
-32768 / -128 = 256
|
|
-32768 / 0 = <<exception>>
|
|
-32768 / 1 = -32768
|
|
-32768 / 2 = -16384
|
|
-32768 / 8 = -4096
|
|
-32768 / 10 = -3276
|
|
-32768 / 16 = -2048
|
|
-32768 / 127 = -258
|
|
-32768 / 32767 = -1
|
|
-32768 / 2147483647 = 0
|
|
-128 / -2147483648 = 0
|
|
-128 / -32768 = 0
|
|
-128 / -128 = 1
|
|
-128 / 0 = <<exception>>
|
|
-128 / 1 = -128
|
|
-128 / 2 = -64
|
|
-128 / 8 = -16
|
|
-128 / 10 = -12
|
|
-128 / 16 = -8
|
|
-128 / 127 = -1
|
|
-128 / 32767 = 0
|
|
-128 / 2147483647 = 0
|
|
0 / -2147483648 = 0
|
|
0 / -32768 = 0
|
|
0 / -128 = 0
|
|
0 / 0 = <<exception>>
|
|
0 / 1 = 0
|
|
0 / 2 = 0
|
|
0 / 8 = 0
|
|
0 / 10 = 0
|
|
0 / 16 = 0
|
|
0 / 127 = 0
|
|
0 / 32767 = 0
|
|
0 / 2147483647 = 0
|
|
1 / -2147483648 = 0
|
|
1 / -32768 = 0
|
|
1 / -128 = 0
|
|
1 / 0 = <<exception>>
|
|
1 / 1 = 1
|
|
1 / 2 = 0
|
|
1 / 8 = 0
|
|
1 / 10 = 0
|
|
1 / 16 = 0
|
|
1 / 127 = 0
|
|
1 / 32767 = 0
|
|
1 / 2147483647 = 0
|
|
2 / -2147483648 = 0
|
|
2 / -32768 = 0
|
|
2 / -128 = 0
|
|
2 / 0 = <<exception>>
|
|
2 / 1 = 2
|
|
2 / 2 = 1
|
|
2 / 8 = 0
|
|
2 / 10 = 0
|
|
2 / 16 = 0
|
|
2 / 127 = 0
|
|
2 / 32767 = 0
|
|
2 / 2147483647 = 0
|
|
8 / -2147483648 = 0
|
|
8 / -32768 = 0
|
|
8 / -128 = 0
|
|
8 / 0 = <<exception>>
|
|
8 / 1 = 8
|
|
8 / 2 = 4
|
|
8 / 8 = 1
|
|
8 / 10 = 0
|
|
8 / 16 = 0
|
|
8 / 127 = 0
|
|
8 / 32767 = 0
|
|
8 / 2147483647 = 0
|
|
10 / -2147483648 = 0
|
|
10 / -32768 = 0
|
|
10 / -128 = 0
|
|
10 / 0 = <<exception>>
|
|
10 / 1 = 10
|
|
10 / 2 = 5
|
|
10 / 8 = 1
|
|
10 / 10 = 1
|
|
10 / 16 = 0
|
|
10 / 127 = 0
|
|
10 / 32767 = 0
|
|
10 / 2147483647 = 0
|
|
16 / -2147483648 = 0
|
|
16 / -32768 = 0
|
|
16 / -128 = 0
|
|
16 / 0 = <<exception>>
|
|
16 / 1 = 16
|
|
16 / 2 = 8
|
|
16 / 8 = 2
|
|
16 / 10 = 1
|
|
16 / 16 = 1
|
|
16 / 127 = 0
|
|
16 / 32767 = 0
|
|
16 / 2147483647 = 0
|
|
127 / -2147483648 = 0
|
|
127 / -32768 = 0
|
|
127 / -128 = 0
|
|
127 / 0 = <<exception>>
|
|
127 / 1 = 127
|
|
127 / 2 = 63
|
|
127 / 8 = 15
|
|
127 / 10 = 12
|
|
127 / 16 = 7
|
|
127 / 127 = 1
|
|
127 / 32767 = 0
|
|
127 / 2147483647 = 0
|
|
32767 / -2147483648 = 0
|
|
32767 / -32768 = 0
|
|
32767 / -128 = -255
|
|
32767 / 0 = <<exception>>
|
|
32767 / 1 = 32767
|
|
32767 / 2 = 16383
|
|
32767 / 8 = 4095
|
|
32767 / 10 = 3276
|
|
32767 / 16 = 2047
|
|
32767 / 127 = 258
|
|
32767 / 32767 = 1
|
|
32767 / 2147483647 = 0
|
|
2147483647 / -2147483648 = 0
|
|
2147483647 / -32768 = -65535
|
|
2147483647 / -128 = -16777215
|
|
2147483647 / 0 = <<exception>>
|
|
2147483647 / 1 = 2147483647
|
|
2147483647 / 2 = 1073741823
|
|
2147483647 / 8 = 268435455
|
|
2147483647 / 10 = 214748364
|
|
2147483647 / 16 = 134217727
|
|
2147483647 / 127 = 16909320
|
|
2147483647 / 32767 = 65538
|
|
2147483647 / 2147483647 = 1
|
|
|
|
*** Test binary operation 'rem' ***
|
|
|
|
-2147483648 rem -2147483648 = 0
|
|
-2147483648 rem -32768 = 0
|
|
-2147483648 rem -128 = 0
|
|
-2147483648 rem 0 = <<exception>>
|
|
-2147483648 rem 1 = 0
|
|
-2147483648 rem 2 = 0
|
|
-2147483648 rem 8 = 0
|
|
-2147483648 rem 10 = -8
|
|
-2147483648 rem 16 = 0
|
|
-2147483648 rem 127 = -8
|
|
-2147483648 rem 32767 = -2
|
|
-2147483648 rem 2147483647 = -1
|
|
-32768 rem -2147483648 = -32768
|
|
-32768 rem -32768 = 0
|
|
-32768 rem -128 = 0
|
|
-32768 rem 0 = <<exception>>
|
|
-32768 rem 1 = 0
|
|
-32768 rem 2 = 0
|
|
-32768 rem 8 = 0
|
|
-32768 rem 10 = -8
|
|
-32768 rem 16 = 0
|
|
-32768 rem 127 = -2
|
|
-32768 rem 32767 = -1
|
|
-32768 rem 2147483647 = -32768
|
|
-128 rem -2147483648 = -128
|
|
-128 rem -32768 = -128
|
|
-128 rem -128 = 0
|
|
-128 rem 0 = <<exception>>
|
|
-128 rem 1 = 0
|
|
-128 rem 2 = 0
|
|
-128 rem 8 = 0
|
|
-128 rem 10 = -8
|
|
-128 rem 16 = 0
|
|
-128 rem 127 = -1
|
|
-128 rem 32767 = -128
|
|
-128 rem 2147483647 = -128
|
|
0 rem -2147483648 = 0
|
|
0 rem -32768 = 0
|
|
0 rem -128 = 0
|
|
0 rem 0 = <<exception>>
|
|
0 rem 1 = 0
|
|
0 rem 2 = 0
|
|
0 rem 8 = 0
|
|
0 rem 10 = 0
|
|
0 rem 16 = 0
|
|
0 rem 127 = 0
|
|
0 rem 32767 = 0
|
|
0 rem 2147483647 = 0
|
|
1 rem -2147483648 = 1
|
|
1 rem -32768 = 1
|
|
1 rem -128 = 1
|
|
1 rem 0 = <<exception>>
|
|
1 rem 1 = 0
|
|
1 rem 2 = 1
|
|
1 rem 8 = 1
|
|
1 rem 10 = 1
|
|
1 rem 16 = 1
|
|
1 rem 127 = 1
|
|
1 rem 32767 = 1
|
|
1 rem 2147483647 = 1
|
|
2 rem -2147483648 = 2
|
|
2 rem -32768 = 2
|
|
2 rem -128 = 2
|
|
2 rem 0 = <<exception>>
|
|
2 rem 1 = 0
|
|
2 rem 2 = 0
|
|
2 rem 8 = 2
|
|
2 rem 10 = 2
|
|
2 rem 16 = 2
|
|
2 rem 127 = 2
|
|
2 rem 32767 = 2
|
|
2 rem 2147483647 = 2
|
|
8 rem -2147483648 = 8
|
|
8 rem -32768 = 8
|
|
8 rem -128 = 8
|
|
8 rem 0 = <<exception>>
|
|
8 rem 1 = 0
|
|
8 rem 2 = 0
|
|
8 rem 8 = 0
|
|
8 rem 10 = 8
|
|
8 rem 16 = 8
|
|
8 rem 127 = 8
|
|
8 rem 32767 = 8
|
|
8 rem 2147483647 = 8
|
|
10 rem -2147483648 = 10
|
|
10 rem -32768 = 10
|
|
10 rem -128 = 10
|
|
10 rem 0 = <<exception>>
|
|
10 rem 1 = 0
|
|
10 rem 2 = 0
|
|
10 rem 8 = 2
|
|
10 rem 10 = 0
|
|
10 rem 16 = 10
|
|
10 rem 127 = 10
|
|
10 rem 32767 = 10
|
|
10 rem 2147483647 = 10
|
|
16 rem -2147483648 = 16
|
|
16 rem -32768 = 16
|
|
16 rem -128 = 16
|
|
16 rem 0 = <<exception>>
|
|
16 rem 1 = 0
|
|
16 rem 2 = 0
|
|
16 rem 8 = 0
|
|
16 rem 10 = 6
|
|
16 rem 16 = 0
|
|
16 rem 127 = 16
|
|
16 rem 32767 = 16
|
|
16 rem 2147483647 = 16
|
|
127 rem -2147483648 = 127
|
|
127 rem -32768 = 127
|
|
127 rem -128 = 127
|
|
127 rem 0 = <<exception>>
|
|
127 rem 1 = 0
|
|
127 rem 2 = 1
|
|
127 rem 8 = 7
|
|
127 rem 10 = 7
|
|
127 rem 16 = 15
|
|
127 rem 127 = 0
|
|
127 rem 32767 = 127
|
|
127 rem 2147483647 = 127
|
|
32767 rem -2147483648 = 32767
|
|
32767 rem -32768 = 32767
|
|
32767 rem -128 = 127
|
|
32767 rem 0 = <<exception>>
|
|
32767 rem 1 = 0
|
|
32767 rem 2 = 1
|
|
32767 rem 8 = 7
|
|
32767 rem 10 = 7
|
|
32767 rem 16 = 15
|
|
32767 rem 127 = 1
|
|
32767 rem 32767 = 0
|
|
32767 rem 2147483647 = 32767
|
|
2147483647 rem -2147483648 = 2147483647
|
|
2147483647 rem -32768 = 32767
|
|
2147483647 rem -128 = 127
|
|
2147483647 rem 0 = <<exception>>
|
|
2147483647 rem 1 = 0
|
|
2147483647 rem 2 = 1
|
|
2147483647 rem 8 = 7
|
|
2147483647 rem 10 = 7
|
|
2147483647 rem 16 = 15
|
|
2147483647 rem 127 = 7
|
|
2147483647 rem 32767 = 1
|
|
2147483647 rem 2147483647 = 0
|