micropython/tests/basics/int_long.py

55 lines
669 B
Python
Raw Normal View History

2014-01-27 07:05:50 +00:00
# This tests long ints for 32-bit machine
a = 0x1ffffffff
b = 0x100000000
print(a)
print(b)
print(a + b)
print(a - b)
print(b - a)
# overflows long long implementation
#print(a * b)
print(a // b)
print(a % b)
print("&", a & b)
2014-01-27 07:05:50 +00:00
print(a | b)
print(a ^ b)
print(a << 3)
print(a >> 1)
a += b
print(a)
a -= 123456
print(a)
a *= 257
print(a)
a //= 257
print(a)
a %= b
print(a)
a ^= b
print(a)
a |= b
print(a)
a &= b
print("&=", a)
2014-01-27 07:05:50 +00:00
a <<= 5
print(a)
a >>= 1
print(a)
# Test referential integrity of long ints
a = 0x1ffffffff
b = a
a += 1
print(a)
print(b)
# Bitwise ops on 64-bit
a = 0x1ffffffffffffffff
b = 0x10000000000000000
print("&", a & b)
print(a | b)
print(a ^ b)