Files
mercury/tests/hard_coded/arith_uint8.exp
Julien Fischer 28b9348b26 Add tests of basic arithmetic for 8-bit integers.
tests/hard_coded/arith_int8.{m,exp}:
tests/hard_coded/arith_uint8.{m,exp}:
tests/hard_coded/Mmakefile:
     As above.
2017-08-21 21:27:01 +10:00

260 lines
3.2 KiB
Plaintext

*** Test binary operation '+' ***
0 + 0 = 0
0 + 1 = 1
0 + 2 = 2
0 + 8 = 8
0 + 10 = 10
0 + 16 = 16
0 + 255 = 255
1 + 0 = 1
1 + 1 = 2
1 + 2 = 3
1 + 8 = 9
1 + 10 = 11
1 + 16 = 17
1 + 255 = 0
2 + 0 = 2
2 + 1 = 3
2 + 2 = 4
2 + 8 = 10
2 + 10 = 12
2 + 16 = 18
2 + 255 = 1
8 + 0 = 8
8 + 1 = 9
8 + 2 = 10
8 + 8 = 16
8 + 10 = 18
8 + 16 = 24
8 + 255 = 7
10 + 0 = 10
10 + 1 = 11
10 + 2 = 12
10 + 8 = 18
10 + 10 = 20
10 + 16 = 26
10 + 255 = 9
16 + 0 = 16
16 + 1 = 17
16 + 2 = 18
16 + 8 = 24
16 + 10 = 26
16 + 16 = 32
16 + 255 = 15
255 + 0 = 255
255 + 1 = 0
255 + 2 = 1
255 + 8 = 7
255 + 10 = 9
255 + 16 = 15
255 + 255 = 254
*** Test binary operation '-' ***
0 - 0 = 0
0 - 1 = 255
0 - 2 = 254
0 - 8 = 248
0 - 10 = 246
0 - 16 = 240
0 - 255 = 1
1 - 0 = 1
1 - 1 = 0
1 - 2 = 255
1 - 8 = 249
1 - 10 = 247
1 - 16 = 241
1 - 255 = 2
2 - 0 = 2
2 - 1 = 1
2 - 2 = 0
2 - 8 = 250
2 - 10 = 248
2 - 16 = 242
2 - 255 = 3
8 - 0 = 8
8 - 1 = 7
8 - 2 = 6
8 - 8 = 0
8 - 10 = 254
8 - 16 = 248
8 - 255 = 9
10 - 0 = 10
10 - 1 = 9
10 - 2 = 8
10 - 8 = 2
10 - 10 = 0
10 - 16 = 250
10 - 255 = 11
16 - 0 = 16
16 - 1 = 15
16 - 2 = 14
16 - 8 = 8
16 - 10 = 6
16 - 16 = 0
16 - 255 = 17
255 - 0 = 255
255 - 1 = 254
255 - 2 = 253
255 - 8 = 247
255 - 10 = 245
255 - 16 = 239
255 - 255 = 0
*** Test binary operation '*' ***
0 * 0 = 0
0 * 1 = 0
0 * 2 = 0
0 * 8 = 0
0 * 10 = 0
0 * 16 = 0
0 * 255 = 0
1 * 0 = 0
1 * 1 = 1
1 * 2 = 2
1 * 8 = 8
1 * 10 = 10
1 * 16 = 16
1 * 255 = 255
2 * 0 = 0
2 * 1 = 2
2 * 2 = 4
2 * 8 = 16
2 * 10 = 20
2 * 16 = 32
2 * 255 = 254
8 * 0 = 0
8 * 1 = 8
8 * 2 = 16
8 * 8 = 64
8 * 10 = 80
8 * 16 = 128
8 * 255 = 248
10 * 0 = 0
10 * 1 = 10
10 * 2 = 20
10 * 8 = 80
10 * 10 = 100
10 * 16 = 160
10 * 255 = 246
16 * 0 = 0
16 * 1 = 16
16 * 2 = 32
16 * 8 = 128
16 * 10 = 160
16 * 16 = 0
16 * 255 = 240
255 * 0 = 0
255 * 1 = 255
255 * 2 = 254
255 * 8 = 248
255 * 10 = 246
255 * 16 = 240
255 * 255 = 1
*** Test binary operation '/' ***
0 / 0 = <<exception>>
0 / 1 = 0
0 / 2 = 0
0 / 8 = 0
0 / 10 = 0
0 / 16 = 0
0 / 255 = 0
1 / 0 = <<exception>>
1 / 1 = 1
1 / 2 = 0
1 / 8 = 0
1 / 10 = 0
1 / 16 = 0
1 / 255 = 0
2 / 0 = <<exception>>
2 / 1 = 2
2 / 2 = 1
2 / 8 = 0
2 / 10 = 0
2 / 16 = 0
2 / 255 = 0
8 / 0 = <<exception>>
8 / 1 = 8
8 / 2 = 4
8 / 8 = 1
8 / 10 = 0
8 / 16 = 0
8 / 255 = 0
10 / 0 = <<exception>>
10 / 1 = 10
10 / 2 = 5
10 / 8 = 1
10 / 10 = 1
10 / 16 = 0
10 / 255 = 0
16 / 0 = <<exception>>
16 / 1 = 16
16 / 2 = 8
16 / 8 = 2
16 / 10 = 1
16 / 16 = 1
16 / 255 = 0
255 / 0 = <<exception>>
255 / 1 = 255
255 / 2 = 127
255 / 8 = 31
255 / 10 = 25
255 / 16 = 15
255 / 255 = 1
*** Test binary operation 'rem' ***
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 255 = 0
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 255 = 1
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 255 = 2
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 255 = 8
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 255 = 10
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 255 = 16
255 rem 0 = <<exception>>
255 rem 1 = 0
255 rem 2 = 1
255 rem 8 = 7
255 rem 10 = 5
255 rem 16 = 15
255 rem 255 = 0