k7michal is right,
Just use the 74c922 and plain 4X4 keyboard, wire the keyboard to the X and Y inputs of the 922 , Wire the outputs of the 922 to AD0-AD3 in the 8051 , Map the 922 to an adress and then you have 2 options:
A. Using interrupt for indicating that a key is pressed (Wire DA from the 922 to the INT1 in the 8051) - it will be a very good idea
B. Use port polling (Wire DA of the 922 to any bit of P1 in the 8051) - dont forget that you will need that the proccessor will check the port constantly!