64-bit

Unit pemprosesan pusat (CPU) **64-bit** telah pun disediakan untuk superkomputer sejak 1960-an serta untuk stesen kerja dan pelayan berasaskan RISC sejak awal 1990-an. Pada 2003, ia diperkenalkan kepada arena komputer peribadi arus utama (dahulunya 32-bit) dalam seni bina pemproses PowerPC x86-64 dan 64-bit.

Tanpa pembatasan lanjut, seni bina komputer **64-bit** umumnya memiliki pendaftar integer dan pendaftar pengalamatan yang selebar 64 bit, dan membenarkan sokongan langsung untuk jenis data serta alamat 64-bit. Bagaimanapun, CPU mungkin memiliki bas data atau bas alamat luaran yang saiznya berbeza dengan saiz untuk pendaftar, malahan lebih besar (misalnya, Pentium 32-bit mempunyai bas data 64-bit). Istilah ini juga merujuk kepada saiz jenis data peringkat rendah seperti nombor titik apung 64-bit.

Dalam bidang pengimejan digital, 64-bit merujuk kepada imej 48-bit, dengan saluran alfa 16-bit.


## Implikasi seni bina
Pendaftar pemproses biasanya dibahagikan kepada beberapa kumpulan: integer; titik apung; SIMD; kawalan; dan seringnya pendaftar khusus untuk aritmetik alamat yang memiliki berbagai-bagai kegunaan dan nama seperti alamat, indeks, atau pendaftar asas. Bagaimanapun, dalam reka bentuk moden, hanya pendaftar integer dan/atau pendaftar alamat boleh digunakan untuk mengalamatkan data di dalam ingatan, dengan jenis yang lain tidak dapat berbuat demikian. Justera, saiz pendaftar ini biasanya mengehadkan jumlah ingatan boleh alamat terus, walaupun terdapat pendaftar yang lain yang lebih lebar yang dipasang bersama-sama.

Kebanyakan pemproses prestasi tinggi 32-bit dan 64-bit (kekecualian yang terutama termasuk kebanyakan CPU ARM dan CPU MIPS 32-bit) mempunyai perkakasan titik apung bersepadu yang seringnya (tetapi bukan selalu) berdasarkan unit data 64-bit. Misalnya, walaupun seni bina x86/x87 mempunyai suruhan yang berupaya memuat dan menyimpan nilai titik apung 64-bit (dan 32-bit), format data dan pendaftar dalamannya ialah 80 bit lebarnya. Sebagai perbandingan, keluarga DEC Alpha 64-bit menggunakan format data dan pendaftar dalaman 64-bit (serta juga pendaftar integer 64-bit).

## Sejarah
Kebanyakan unit pemprosesan pusat (CPU) direka bentuk supaya kandungan bagi sesuatu pendaftar integer tunggal dapat menyimpan alamat (lokasi) untuk mana-mana data di dalam ingatan maya komputer. Justera, jumlah alamat di dalam ingatan maya &mdash; jumlah data yang dapat dikekalkan dalam kawasan kerja oleh komputer &mdash; ditentukan oleh lebar pendaftar itu. Mulai dengan pengenalan IBM System/360 pada 1960-an lalu pengenalan minikomputer DEC VAX (antara banyak yang lain) pada 1970-an dan Intel 80386 pada pertengahan 1980-an, satu sepersetujuan *de facto* berkembang bahawa 32 bit ialah saiz pendaftar yang lebih sesuai. Satu pendaftar alamat 32-bit bermakna bahawa 232 alamat, atau RAM 4 GB dapat dirujuk. Pada waktu seni bina ini dicipta, ingatan 4 GB jauh melebihi jumlah umum (16 MB) yang disediakan untuk pemasangan, dengan itu dianggap sebagai "ruang atas" yang mencukupi untuk pengalamatan. Satu lagi alasan yang utama tentang mengapa alamat 4 GB dianggap sebagai saiz yang sesuai ialah: 4 bilion integer adalah cukup untuk mengumpukkan rujukan yang unik kepada kebanyakan benda fizikal yang boleh dihitung, misalnya penggunaan untuk pangkalan data.

Sesetengah seni bina pemproses superkomputer 1970-an dan 1980-an menggunakan lebar pendaftar sehingga 64 bit. Bagaimanapun, 32 bit tetap umum sehingga awal 1990-an apabila penurunan harga ingatan yang berterusan menyebabkan keperluan:
* pemasangan dengan jumlah RAM yang menghampiri 4 GB; dan
* penggunaan ruang ingatan maya yang melewati had 4 gigabait;
untuk menangani sesetengah jenis masalah. Sebagai balasan, MIPS dan DEC menmbangunkan seni bina mikropemproses 64-bit, mula-mulanya untuk mesin stesen kerja dan pelayan atasan. Menjelang pertengahan 1990-an, HAL Computer Systems, Sun Microsystems, IBM, dan Hewlett Packard telah membangunkan seni bina 64-bit untuk sistem stesen kerja dan sistem pelayan masing-masing. Suatu kekecualian yang utama kepada arah aliran ini ialah komputer kerangka utama IBM yang tetap menggunakan 32-bit. Sewaktu 1990-an, sebilangan mikropemproses 64-bit kos rendah telah digunakan dalam elektronik pengguna dan aplikasi terbenam, terutamanya Nintendo 64 dan PlayStation 2, sebelum pengenalannya kepada komputer peribadi. Kelengkapan rangkaian and pencetak atasan serta juga komputer perindustrian, turut menggunakan mikropemproses 64-bit, misalnya Quantum Effect Devices R5000. Pengkomputan 64-bit mula bergerak kepada komputer meja peribadi sejak 2003 apabila:
* sesetengah model dalam barisan keluaran Macintosh Apple bertukar kepada pemproses PowerPC 970 (diistilahkan sebagai "G5" oleh Apple); dan
* AMD melancarkan perluasan x86-64 64-bit kepada seni bina x86, dengan pemproses berdasarkan seni bina ini menjadi lebih umum bagi IBM PC atasan.
 
Kemunculan seni bina 64-bit secara berkesan meningkatkan had ingatan sehingga 264 alamat, iaitu sekitar 17.2 bilion gigabait, atau 16.8 juta terabait, atau 16 eksabait RAM-nya. Supaya dapat mendapatkan pandangan yang lebih jelas, perlu diingatkan bahawa pada zaman yang ingatan utama 4 MB sangat umum, had ingatan maksimum sebanyak 232 alamat adalah sekitar 1,000 kali lebih besar daripada tatarajah ingatan yang biasa. Kini, apabila ingatan utama yang melebihi 2 GB telah menjadi umum, had sebanyak 264 alamat adalah sekitar 10 trilion kali lebih besar, iaitu 10 bilion kali lebih banyak ruang atas, berbanding dengan kes 232.

## Pengehadan
Kebanyakan mikropemproses 64-bit dalam pasaran pada saat ini memiliki batas buatan terhadap jumlah ingatan yang dapat dialamatkannya kerana kekangan fizikal mengakibatkannya tidak mungkin menyokong seluruh muatan 16.8 juta terabait. Misalnya, seni bina AMD64 mempunyai ingatan fizikal sebanyak 52 bit hadnya dan kini hanya menyokong ruang alamat maya 48-bit. Walau bagaimanapun, ingatan fizikal dan ruang alamat maya itu masing-masing masih merupakan 4 petabait dan 256 terabait muatannya.

## Lihat juga
* Ingatan komputer

## Rujukan

## Pautan luar
* 64-Bit Programming Models: Why LP64?
* AMD64 (EM64T) architecture