https://learn-software.com/programming/intro/numerical-systems/