using numbers to manage registers
fix spec, should always have the lowest 8 bits
using number to manage keys