Lets explain the whole memory thing on windows.
All processes (aka program) are allocated 4gb of address space 2^32 by the windows memory manager. This is regardless of the physical memory installed in the workstation it will use the page file to provide any additional memory. This address space is split 50:50 Process & kernel. Therefore each process has a maximum size of 2gb, this is a fixed limit on windows 2000 but on windows XP the ratio of process to kernel can be changed to 75:25 giving the process a maximum size of 3gb. For an application to be able to use more than 2gb of memory it needs to be large address space aware, R15 & R16 (and possibly R14 I can never remember when it changed) are. An application can be modified to be large address space aware using imagecfg or editbin. The use of the 3GB switch is detaied in numerous documents, one is mentioned above but there are others available (find the IBM PLM support web site).
If more memory is required then a 32bit large address aware catia can be run on WinXP64 this will allow the CNEXT process to use 4gb of memory. If this is still not enough then using R16 or higher 64bit version on WinXP64 will allow the cnext process to use 8gb of memory. The theoretical memory limit for a 64bit os is 16tb (2^64) but at the moment WinXP64 has a limit of 16gb (it many $$$$ to get a machine with this much memory) which is split 50:50 process to kernel. Who knows there may be a 12gb switch for XP64 or you may just move to vista or what ever follows.
There are also many tools in catia to reduce the memory consumption when handling large assemblies. Look up working with cache, managing representations, selective loading.