32-bit vs 64-bit 
Author Message
 32-bit vs 64-bit

Hi

What is the meaning of following?

1) 32-bit/64-bit processor
2) 32-bit/64-bit operating system
3) 32-bit/64-bit I/O operations
4) 32-bit/64-bit libraries
5) 32-bit/64-bit compilation
6) 32-bit/64-bit linking

What is the concept (in general) of 32-bit/64-bit in above aspects? What are
their advantages/disadvantages?

thanks,
regards,
Naresh Agarwal



Wed, 13 Apr 2005 19:50:33 GMT  
 32-bit vs 64-bit

Quote:

> Hi

> What is the meaning of following?

> 1) 32-bit/64-bit processor
> 2) 32-bit/64-bit operating system
> 3) 32-bit/64-bit I/O operations
> 4) 32-bit/64-bit libraries
> 5) 32-bit/64-bit compilation
> 6) 32-bit/64-bit linking

> What is the concept (in general) of 32-bit/64-bit in above aspects? What are
> their advantages/disadvantages?

> thanks,
> regards,
> Naresh Agarwal

The bit size is a property of the processor.  It is the fundamental size
of the hardware paths.  

A 32 bit processor can add two 32-bit integers in one machine
instruction and with 32-bit addresses it can access 4 GByte of memory.  

A 64 bit processor can add two 64-bit integers in one machine
instruction and with 64-bit addresses it can access 4G*4G of memory.  

The machine instruction set is different, so all programs and operations
must be designed for 64-bit operation in order to take advantage of it.
The main practical advantage of 64-bits is the much much larger memory
capability.

--
Scott McPhillips [VC++ MVP]



Wed, 13 Apr 2005 21:47:36 GMT  
 32-bit vs 64-bit



Quote:
> Hi

> What is the meaning of following?

A bit blurred, of course.  :-)

Quote:
> 1) 32-bit/64-bit processor

Basically, the 'bitness' of a processor is its 'natural' size of operands.
Often this is the size of the registers and the operating unit (ALU) of the
processor.

Of course this is muddled by processors like the Pentium 4, which has 32-,
64-, and 128-bit registers.

Current processors also often have several ALUs working in parallell, making
it possible to process two or more 32-bit quantities at a time. Does that
make them 64-bit? Probably not.

Quote:
> 2) 32-bit/64-bit operating system

Support for the  32/64 bit processor above.  :-)

Quote:
> 3) 32-bit/64-bit I/O operations
> 4) 32-bit/64-bit libraries
> 5) 32-bit/64-bit compilation
> 6) 32-bit/64-bit linking

> What is the concept (in general) of 32-bit/64-bit in above aspects? What
are
> their advantages/disadvantages?

The advantage of 32-bit processors is that they process more data faster
than 16-bit processors. :-)

One advantage of 64-bit processors is that they can naturally handle
memories larger than 4GB (a 32-bit number). A disadvantage is that code
using 64 bits will possibly be larger because of bigger data units. These
processors are, so far, also much more expensive.

Bo Persson



Wed, 13 Apr 2005 21:58:49 GMT  
 32-bit vs 64-bit

Quote:
> From the perspective of Visual C, you should consult the compiler
> documentation for specific details on how this all works in their
> implementation.  (i.e. you need to get hold of the 64 bit compiler and
it's
> documentation.)

... all of which is included in the Platform SDK.  The current PSDK includes
a version of the 64-bit compiler that's in-between VS.NET and VS "Everett"
as far as language conformance, etc are concerned.

-cd



Sat, 16 Apr 2005 01:44:49 GMT  
 32-bit vs 64-bit


Quote:
> What is the difference between a 32-bit and 64-bit application from
a
> developer point of
> view?

The difference is as little or as great as the vendors of
the OS, compiler, and libraries choose to make it.

Quote:
> Does 64-bit library means a library written for 64-bit
> processor or it would also work on 32-bit processor?

No; it might. it might not.

Quote:
> What is the meaning comilation in 32-bit mode and 64-bit mode?

There isn't really compilation in 32-bit mode or 64-bit
mode. There are 32-bit compilers and 64-bit compilers.

Ultimately, the terms "32-bit" and "64-bit" are very
imprecise. There is no quick, accurate definition.
What you see depends on your point of view.

See the parable of the blind men and the elephant.

Also, usenet newsgroups are a lousy source for
learning something new. For real information on this,
you want to study some computer science texts
from your local library.

From your original post:

Quote:
> What is the meaning of following?

> 1) 32-bit/64-bit processor

A 32-bit processor is _generally_ considered to be
one in which memory can be addressed using a 32-bit
pointer value. This is complicated by support for virtual
memory addressing, which usually means that application
programs will address memory using a 32-bit _virtual
address_, which points to memory in their own
private address space. Physically, the virtual memory
manager uses a selector table to map virtual addresses
to physical addresses.

A 64-bit processor is _generally_ considered to be
one in which memory can be addressed using a 64-bit
pointer value. The same virtual memory modifications
apply.

As Scott indicated there will also be native instructions
for manipulating 32 or 64 bit quantities in a single
instruction.

Quote:
> 2) 32-bit/64-bit operating system

A 32-bit operating system is generally considered to
be one that supports applications that use memory
with 32-bit addresses.

A 64-bit operating system is generally considered to
be one that supports applications that use memory
with 64-bit addresses.

For example, Windows 32-bit (WinNT/2K/XP and
Win95/98/ME) will run on the Intel's 64-bit processors
just as well as on Intel's 32-bit processors. But they
can't use the full 64-bit addressing. They are 32-bit
operating systems, whether they run on 32-bit or
64-bit processors.

Quote:
> 3) 32-bit/64-bit I/O operations

Not a generally used term. I would assume it refers
to whether I/O ports accept 32-bit quantities or
64-bit.

Quote:
> 4) 32-bit/64-bit libraries

Libraries built to support 32-bit/64-bit applications.
Any compiler will generate one or the other.

Quote:
> 5) 32-bit/64-bit compilation

Not a commonly used term. Creating a 32-bit/
64-bit application.

Quote:
> 6) 32-bit/64-bit linking

Not a commonly used term. You compile for
a 32-bit application using a 32-bit compiler,
32-bit libraries, and a 32-bit linker. You
can't mix and match.

Quote:
> What is the concept (in general) of 32-bit/
> 64-bit in above aspects? What are
> their advantages/disadvantages?

See the Intel web site http://www.intel.com
or read the relevant computer science textbooks.


Sat, 16 Apr 2005 00:07:21 GMT  
 32-bit vs 64-bit

Quote:
> > The machine instruction set is different, so all programs and operations
> > must be designed for 64-bit operation in order to take advantage of it.
> > The main practical advantage of 64-bits is the much much larger memory
> > capability.

> What is the difference between a 32-bit and 64-bit application from a
> developer point of
> view?

Note that from the perspective of high level languages like C#, Java, and
VB, there is no (appreciable) difference.  From langages like C++, there
often is no difference, if you've chosen to follow the recommendations of
avoiding pointers, although even then, it's not hard to avoid differences.
From languages like C, you need to think a bit about how to store things to
make sure you will not have a problem.

Constructs like this:
int Foo;
int *pFoo = &Foo;
int npFoo = (int) pFoo;

are dangerous as there is no guarantee that an int has sufficient bits (or,
for that matter, the right kind of bits) to hold a pointer.

From the perspective of Visual C, you should consult the compiler
documentation for specific details on how this all works in their
implementation.  (i.e. you need to get hold of the 64 bit compiler and it's
documentation.)



Sat, 16 Apr 2005 01:38:13 GMT  
 32-bit vs 64-bit
Hi Ruble,

thank a lot for replying..

Quote:
> > What is the meaning comilation in 32-bit mode and 64-bit mode?

> There isn't really compilation in 32-bit mode or 64-bit
> mode. There are 32-bit compilers and 64-bit compilers.

Can 64-bit complier (which will generate 64-bit applications) run
on a 32-bit OS?

thanks,
regards,
Naresh Agarwal


Quote:



> > What is the difference between a 32-bit and 64-bit application from
> a
> > developer point of
> > view?

> The difference is as little or as great as the vendors of
> the OS, compiler, and libraries choose to make it.

> > Does 64-bit library means a library written for 64-bit
> > processor or it would also work on 32-bit processor?

> No; it might. it might not.

> > What is the meaning comilation in 32-bit mode and 64-bit mode?

> There isn't really compilation in 32-bit mode or 64-bit
> mode. There are 32-bit compilers and 64-bit compilers.
> Ultimately, the terms "32-bit" and "64-bit" are very
> imprecise. There is no quick, accurate definition.
> What you see depends on your point of view.

> See the parable of the blind men and the elephant.

> Also, usenet newsgroups are a lousy source for
> learning something new. For real information on this,
> you want to study some computer science texts
> from your local library.

> From your original post:

> > What is the meaning of following?

> > 1) 32-bit/64-bit processor

> A 32-bit processor is _generally_ considered to be
> one in which memory can be addressed using a 32-bit
> pointer value. This is complicated by support for virtual
> memory addressing, which usually means that application
> programs will address memory using a 32-bit _virtual
> address_, which points to memory in their own
> private address space. Physically, the virtual memory
> manager uses a selector table to map virtual addresses
> to physical addresses.

> A 64-bit processor is _generally_ considered to be
> one in which memory can be addressed using a 64-bit
> pointer value. The same virtual memory modifications
> apply.

> As Scott indicated there will also be native instructions
> for manipulating 32 or 64 bit quantities in a single
> instruction.

> > 2) 32-bit/64-bit operating system

> A 32-bit operating system is generally considered to
> be one that supports applications that use memory
> with 32-bit addresses.

> A 64-bit operating system is generally considered to
> be one that supports applications that use memory
> with 64-bit addresses.

> For example, Windows 32-bit (WinNT/2K/XP and
> Win95/98/ME) will run on the Intel's 64-bit processors
> just as well as on Intel's 32-bit processors. But they
> can't use the full 64-bit addressing. They are 32-bit
> operating systems, whether they run on 32-bit or
> 64-bit processors.

> > 3) 32-bit/64-bit I/O operations

> Not a generally used term. I would assume it refers
> to whether I/O ports accept 32-bit quantities or
> 64-bit.

> > 4) 32-bit/64-bit libraries

> Libraries built to support 32-bit/64-bit applications.
> Any compiler will generate one or the other.

> > 5) 32-bit/64-bit compilation

> Not a commonly used term. Creating a 32-bit/
> 64-bit application.

> > 6) 32-bit/64-bit linking

> Not a commonly used term. You compile for
> a 32-bit application using a 32-bit compiler,
> 32-bit libraries, and a 32-bit linker. You
> can't mix and match.

> > What is the concept (in general) of 32-bit/
> > 64-bit in above aspects? What are
> > their advantages/disadvantages?

> See the Intel web site http://www.intel.com
> or read the relevant computer science textbooks.



Sat, 16 Apr 2005 16:42:59 GMT  
 32-bit vs 64-bit

Quote:
> To the best of my knowledge, MS is not planning
> to make cross-compilers for Win64. When MS
> supported the Compaq Alpha version of Windows
> NT, you needed to run the compiler on an Alpha
> machine (even though both were 32-bit versions
> of Windows, the Alpha processor is 64-bit).

The present version of the IA-64 (Itanium) compiler in the PSDK is, in fact,
a Win32 application, so it runs on either 32-bit or 64-bit Windows.

-cd



Sat, 16 Apr 2005 22:02:04 GMT  
 
 [ 8 post ] 

 Relevant Pages 

1. 32 bit Vs 64 bit

2. top 32 bits of 64-bit product of two 32-bit integers

3. 16 vs 32 vs 64 bit

4. Help: porting 32-bit app to 64-bit Dec Alpha

5. 64-bit integer on a 32-bit machine

6. Calling 64 bit lib. from 32 bit program

7. emulating a 64 bit divide with 2 32 bit registers in ansi c

8. converting signed 64 bit - 32 bit

9. 64 bit operation on 32 bit PC

10. 64-bit chips, 32-bit compatibility?

11. REQUEST: 64-bit integer math on 32-bit processor

12. Accessing 32-bit com componet from 64-bit application

 

 
Powered by phpBB® Forum Software