Bit Masking

You can't do it with a switch because that looks for discrete values.

More like:

if (REG_KEYINPUT & KEY_A)
  {
  // blah
  }


if (REG_KEYINPUT & KEY_B)
  {
  // blah
  }

Since they are not mutually exclusive, you don't use "else". And you don't use "switch".