Điện toán 64-bit

Trong kiến ​​trúc máy tính, 64-bit là việc sử dụng bộ xử lý có chiều rộng đường dẫn, kích thước số nguyên, và độ rộng địa chỉ bộ nhớ là 64 bit (tám octet). Ngoài ra, các kiến ​​trúc máy tính 64-bit cho các đơn vị xử lý trung tâm (CPU) và các đơn vị logic số học (ALU) là các đơn vị dựa trên bộ đăng ký của bộ xử lý, bus địa chỉ hoặc bus dữ liệu có kích thước đó. Từ quan điểm phần mềm, tính toán 64-bit có nghĩa là sử dụng mã với địa chỉ bộ nhớ ảo 64-bit. Tuy nhiên, không phải tất cả các lệnh 64-bit đều hỗ trợ đầy đủ các địa chỉ bộ nhớ ảo 64-bit; Ví dụ, x86-64 và ARMv8 chỉ hỗ trợ 48 bit địa chỉ ảo, với 16 bit còn lại của địa chỉ ảo được yêu cầu là 0 hoặc tất cả 1, và một vài bộ hướng dẫn 64-bit hỗ trợ ít hơn 64 bit bộ nhớ địa chỉ nhà. Thuật ngữ 64-bit mô tả một thế hệ máy tính, trong đó các bộ vi xử lý 64-bit là chuẩn. 64 bit là một kích thước từ xác định một số lớp kiến ​​trúc máy tính, bus, bộ nhớ và CPU, và bằng cách mở rộng phần mềm chạy trên chúng. Các CPU 64-bit đã được sử dụng trong siêu máy tính từ những năm 1970 (Cray-1, 1975) và trong các máy trạm và máy chủ dựa trên các máy tính lệnh (RISC) từ đầu những năm 1990, đặc biệt là các MIPS R4000, R8000 và R10000, DEC Alpha, UltraSPARC Sun, và bộ vi xử lý IBM RS64 và POWER3 và các bộ vi xử lý POWER sau này. Năm 2003, các CPU 64-bit được giới thiệu trên thị trường máy tính cá nhân chính (trước đây là 32-bit) dưới dạng các bộ vi xử lý x86-64 và PowerPC G5; và trong năm 2012 ngay cả trong kiến ​​trúc ARM nhắm mục tiêu điện thoại thông minh và máy tính bảng, lần đầu tiên được bán vào ngày 20 tháng 9 năm 2013 trong iPhone 5S được cung cấp bởi hệ thống ARMv8-A Apple A7 trên một chip (SoC). Một thanh ghi 64-bit có thể lưu trữ 2⁶⁴ (trên 18 tỷ tỷ ( 18 × 10 18 {\displaystyle 18\times 10^{18}} ) hoặc 1 , 8 × 10 19 {\displaystyle 1,8\times 10^{19}} ) các giá trị khác nhau. Phạm vi của các giá trị số nguyên có thể được lưu trữ trong 64 bit phụ thuộc vào đại diện số nguyên được sử dụng. Với hai đại diện phổ biến nhất, phạm vi từ 0 đến 18,446,744,073,709,551,616 (2⁶⁴) để biểu diễn như một số nhị phân, và -9,223,372,036,854,775,808 (-2⁶³) thông qua 9,223,372,036,854,775,807 (2⁶³-1) để đại diện cho hệ nhị phân. Do đó, một bộ xử lý có địa chỉ bộ nhớ 64-bit có thể truy cập trực tiếp 2⁶⁴ byte (= 16 exabyte) bộ nhớ địa chỉ byte. Không có bằng cấp nào khác, kiến ​​trúc máy tính 64-bit thường có các thanh ghi bộ xử lý số nguyên và địa chỉ 64 bit, cho phép hỗ trợ trực tiếp các loại và địa chỉ dữ liệu 64-bit. Tuy nhiên, một CPU có thể có các bus dữ liệu bên ngoài hoặc các địa chỉ bus với các kích thước khác nhau từ các thanh ghi, thậm chí còn lớn hơn (ví dụ Pentium 32-bit có một bus dữ liệu 64-bit). Thuật ngữ cũng có thể đề cập đến kích thước của mức thấp các loại dữ liệu, chẳng hạn như 64-bit floating-point numbers.