Apakah saya memerlukan lebih banyak RAM untuk pemrograman jika saya beralih ke OS 64 Bit?

2

Mengingat hari ini (untuk alasan kinerja?) Variabel biasanya disejajarkan dengan "bit-width" (saya ingin menggunakan "word-width" di sini, tetapi pada x86 sebuah "word" masih 16 bit kan?) Dari prosesor, akan beralih dari OS 32 bit ke versi 64 bit yang menggandakan penggunaan RAM?

Apakah ini kemudian berarti bahwa untuk melakukan pekerjaan yang sama OS 32 bit dapat dilakukan dengan RAM 4 GB (well, sebenarnya 3.x GB ...) dengan OS 64 bit, saya akan membutuhkan 8 GB RAM untuk pemrograman?

Harap dicatat bahwa saya hanya berbicara tentang komputer x86 sehari-hari di sini.

cangkir mentega
sumber

Jawaban:

4

Biasanya akan ada beberapa peningkatan, tetapi jarang mendekati dua kali lipat. Beberapa info di sini:

http://www.codeguru.com/cpp/cpp/cpp_mfc/tutorials/article.php/c15711/

MartW
sumber
yang tampaknya untuk mengkonfirmasi apa yang saya takut ...
Buttercup
tidak itu tidak mengkonfirmasi apa yang Anda takutkan. 1024 mengapung masih 1024 * 32bit. hanya ptr menunjuk ke array sekarang 8byte bukan 4.
akira
Saya akan mengatakan bahwa jika Anda tidak berjuang untuk memori di tempat pertama, beralih ke 64-bit tidak akan membuat perbedaan besar. Artikel itu mengatakan dalam kebanyakan situasi perbedaannya kecil.
MartW
0

Tidak sama sekali, meskipun ada sedikit overhead pada OS 64 bit perbedaan nyata adalah dalam jumlah memori yang mereka dapat gunakan bukan jumlah yang mereka butuhkan. Jadi perbedaan utama adalah mereka menggunakan 64bits untuk menyimpan alamat memori.

Kol
sumber
0

ehh ...

Saya perhatikan bahwa biasanya ketika Anda menginstal x64 lebih dari sistem x86, program yang dikompilasi hanya x64 biasanya mengambil sedikit lebih banyak memori, namun itu hanya marjinal.

Itu dikatakan, seperti biasa, lebih banyak memori selalu lebih baik!

William Hilsum
sumber
0

Penggunaan memori akan menyebabkan agak meningkat, tetapi jauh dari dua kali lipat. Referensi akan berukuran dua kali lipat, dan beberapa struktur akan lebih besar karena keberpihakan yang berbeda, tetapi tidak memengaruhi semua tipe data. Jika Anda memiliki array byte, byte akan tetap disimpan ujung ke ujung, tidak ada bantalan tujuh byte untuk setiap byte data.

Ukuran kata pada sistem 64 bit tentu saja 64 bit. Tipe data rakitan x86 WORD masih 16 bit, jadi kata sistem adalah QWORD.

Guffa
sumber
-1

Sistem 32-bit menggunakan instruksi 32-bit, dan sistem 64-bit menggunakan instruksi 64-bit. Dengan kata lain, bagian CODE dari program Anda akan mengambil lebih banyak ruang. Itu hanya sedikit dari total penggunaan memori Anda. Segala sesuatu yang lain - DATA dll. - tidak akan banyak berubah; gambar 16 juta warna masih dalam jumlah data yang sama, pada kedua arsitektur.

Lee B
sumber
3
Ukuran instruksi biasanya tidak terkait dengan ruang alamat atau ukuran register. Dalam x86, op-kode adalah jumlah byte yang tidak teratur, apakah itu 32 atau 64-bit.
bobince