The 8051 microcontrollers are basically all the same they have a multiplexed address/data BUS ..in order to connect external devices mapped to this space is required a register (74LS373) in order to latch the the lower addresses .For such a small requirement 2k or 4k there are plenty of other 51 derivatives that have that amount of ram on board .(see cygnal.com)
But if you are a student i suggest you to do at least one project using a multiplexed architecture .Then you also need some decoding logic to select your device ,in your case your memory .. There are some small srams with realtime clocks at the same time.from STmicroelectronics
Now the 8051 architecture is an old architecture ,and there are 4 address spaces
CODE ,DATA ,IDATA XDATA
so every time that you want to access a piece of data you need to indicate where it is ( by using the appropriate instruction ).. Usually with keil C compiler is very simple .by using the PRECEEDING the keyword indiating the space .Keil generates the proper instruction for accessing that SPACE .
CODE is a 64Kbytes space ,DATA is only 128 as well as IDATA .XDATA is also 64k long .. There are plenty of tricks to know about this chips .So get a book it will be better than to ask for little pieces of information here and there .!