Jump to content
Strawberry Orange Banana Lime Leaf Slate Sky Blueberry Grape Watermelon Chocolate Marble
Strawberry Orange Banana Lime Leaf Slate Sky Blueberry Grape Watermelon Chocolate Marble

MSFN is made available via donations, subscriptions and advertising revenue. The use of ad-blocking software hurts the site. Please disable ad-blocking software or set an exception for MSFN. Alternatively, register and become a site sponsor/subscriber and ads will be disabled automatically. 


Sign in to follow this  
MillenX

Addressable memory of 32-bit processor (calculation)

Recommended Posts

WIKIPEDIA:

A word size is characteristic to a given computer architecture. It denotes the number of bits that a CPU can process at one time. Historically it has been sized in multiples of four and eight bits (nybbles and bytes, respectively), so sizes of 4, 8, 12, 16, 24, 32, 48, 64, and larger came into vogue with technological advances.

Very often, when referring to the word size of a modern computer, one is also describing the size of address space on that computer. For instance, a computer said to be "32-bit" also usually allows 32-bit memory addresses; a byte-addressable 32-bit computer can address 232 = 4,294,967,296 bytes of memory, or 4 gibibytes (GB). This seems logical and useful, as it allows one memory address to be efficiently stored in one word.

I don't understand the sentence in bold. "This seems logical and useful" refers to what?

I came across this question

Consider a hypothetical 32-bit microprocessor having 32-bit instructions composed of two fields: the first byte contains the opcode and the remainder the immediate operand or an operand address. What is the maximum directly addressable memory capacity?

Answer:

An operand or operand address is in 3-bytes long (32 bits - 1 byte = 24 bits)

Addressable memory= 2^24 words

= 2^24 x 4 bytes

= 0.0625 GB

Why does not the calculation for addressable memory for byte-addressable 32-bit computer (WIKIPEDIA) exlude bit(s) for opcode like that in the question (that uses 2^24 instead of 2^32)? Byte-addressable processor doesn't have opcode?! I know that Intel 32-bit desktop processor like Pentium 4 can hold only 4GB theoritically. So is the processor in the question a word-addressable and the Pentium 4 a byte-addressable processor?

Share this post


Link to post
Share on other sites

This seems logical and useful, as it allows one memory address to be efficiently stored in one word.

What they're talking about is, if you have 32 bit memory addresses, you can easily store that in a 32 bit register, which is rather logical indeed.

Compare that to say, in the old PC XT days, with 20 bit memory addresses and 16 bit registers where we were stuck with segmented memory. That sucked, but 20 bit addressing gave us 1MB usable instead of a mere 64KB a 16 bit address would have limited us to (that would have been crippling)

Now, it's a little more complicated than that. Modern processors have more than one operating modes (real, protected, virtual, etc) where addressing methods can change. And the Pentium 4 like you were referring to (actually, any CPU since the Pentium Pro) has more than 32 bit address pins. It actually has 36 of them, but you have to use PAE for that (still using 32 bit virtual addresses, but using page tables to map 4GB "windows" in that 64GB that's physically addressable). And 64 bit CPUs (x64) may have 64 bit registers, but don't have a 64 bit address bus as it would be pointless (and to some extent detrimental). They currently "only" have 48 address pins, limiting us to a mere 256TB address space.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...