2
1
I just started learning assembly.
My laptop specification says:
Microprocessor: Intel Core Duo processor T2300
Microprocessor Cache: 2MB L2 Cache
Memory Max: 2048MB
Memory: 1024MB 667MHz DDR2 System Memory (2 Dimm)
"Intel Core Duo processor T2300" specification says:
instruction Set : 32-bit
I think now I can assume that the data bus is also at least 32 bit. So minimum addressable memory should be 4GB.
Moreover CPU specification also mention the Memory Specifications
Physical Address Extensions 32-bit
which as I understand means it can address 64GB of memory
Would that mean that, given only 2 memory slots on motherboard, my laptop can support 2x 2GB memory sticks == (4GB) memory?
I guess the laptop guys assumed that there won't be 2GB sticks, so they might have mentioned Memory Max: 2048MB
@KevinMontrose What you're calling "addressable" memory should rather be called "virtual". And even if you're using AWE, the addresses you use in your program are still virtual and their range is still limited to the user mode virtual address space. – Jamie Hanrahan – 2015-11-06T06:12:32.723
This answer ignores the fact that there are virtual addresses and physical addresses, and the question clearly is referring to physical addresses. – Ben Voigt – 2012-07-22T04:16:04.533
@Ben If you're not using AWE, all addresses are virtual (there might be some kernel exceptions outside of boot, but in user-mode that's definitely true). Besides, I distinguish between the two in the first line of my answer; and point out that more than just your CPU and RAM slots dictate what's actually addressable in the last line (kernel/user-mode divide being the big one; but motherboard would get in the way too). – Kevin Montrose – 2012-07-22T04:55:32.853