Register 32-bit tương ứng với 2^32 (4.294.967.296) ô địa chỉ trong bộ đệm nên bị giới hạn truy xuất tối đa 4 GB hay 4.294.967.296 byte RAM. Trong khi đó 64-bit hay 2^64 (18.446.744.073.709.551.616) ô địa chỉ, không chỉ có độ rộng gấp đôi so với 32-bit mà số lượng ô địa chỉ trong register còn gấp 4.294.967.296 lần. Trên lý thuyết CPU có register 64-bit sẽ có thể truy xuất 18.446.744.073.709.551.616 byte RAM hay 18.446.744 Terabyte (TB) RAM. Thực tế thì CPU 32-bit chỉ có thể khai thác khoảng 3,5 GB RAM bởi 1 phần của register được dùng để lưu những dữ liệu tạm khác bên cạnh ô địa chỉ bộ nhớ. CPU 64-bit với register có không gian nhớ cực lớn đã loại bỏ rào cản truy xuất bộ nhớ RAM, bạn có gắn vài chục TB RAM đi nữa thì vẫn chưa thấm vào đâu với khả năng khai thác của vi xử lý.
Bên cạnh 2 khái niệm 32-bit và 64-bit thì người ta còn hay gọi 32-bit là x86 còn 64-bit là x64. Cách gọi này cũng đúng nhưng cần phải hiểu x86 hay x64 là tập lệnh mà vi xử lý sử dụng:
Intel 8086 x86 vs Intel Core i7-8086K phiên bản kỷ niệm.
Nói tới đây thì hẳn anh em đã hiểu 32-bit/x86 vs 64-bit/x64 qua đó giải thích cho 2 câu hỏi
“Tại sao máy em có 8 GB RAM mà máy chỉ nhận 4 GB?” > Do em cài Windows 32-bit – Windows cũng là một phần mềm và nó được viết cho kiến trúc 32-bit/x86 thành ra nó sẽ không thể nhận toàn bộ dung lượng RAM, chỉ giới hạn ở 4 GB. Giải pháp duy nhất là cài Windows 64-bit.
“Tại sao em cài phần mềm XXX không được trên Windows?” > Do em cài một phần mềm 64-bit trên Windows 32-bit. Các hãng làm phần mềm thường phát hành cả 2 phiên bản 32-bit lẫn 64-bit nhưng nhiều phần mềm chỉ có bản 64-bit thành ra khi tải về thì anh em không thể cài lên máy chạy Windows 32-bit được.
X86 là kiến trúc tập lệnh do Intel phát triển, giới thiệu vào năm 1978 trên dòng vi xử lý 8086, nó còn được gọi là IA-32. Kiến trúc tập lệnh (ISA) đóng vai trò là giao tiếp giữa phần mềm và phần cứng nên một phần mềm được viết cho kiến trúc x86 sẽ chỉ có thể chạy trên phần cứng x86, ở đây là CPU x86. Trong khi đó x64 là phần mở rộng hay phiên bản 64-bit của x86 và mặc dù cả Intel lẫn AMD đều phát triển kiến trúc tập lệnh này nhưng AMD là hãng đầu tiên chuẩn hoá và công bố cấu hình vào năm 2000. Hãng cũng đăng ký sáng chế cho kiến trúc x64của mình và đặt tên là AMD64 thành ra nhiều khi x64 còn được gọi là amd64. Kiến trúc x64 tương tích ngược với các ứng dụng x86, tức là phần mềm viết cho kiến trúc x86 vẫn có thể chạy với CPU x64 mà không cần phải chỉnh sửa lại nhưng phần mềm viết cho kiến trúc x64 lại không thể chạy trên CPU x86.Nói tới đây thì hẳn anh em đã hiểu 32-bit/x86 vs 64-bit/x64 qua đó giải thích cho 2 câu hỏi cơ bản về phần cứng lẫn phần mềm hay gặp trên Windows:”Tại sao máy em có 8 GB RAM mà máy chỉ nhận 4 GB?” > Do em cài Windows 32-bit – Windows cũng là một phần mềm và nó được viết cho kiến trúc 32-bit/x86 thành ra nó sẽ không thể nhận toàn bộ dung lượng RAM, chỉ giới hạn ở 4 GB. Giải pháp duy nhất là cài Windows 64-bit.”Tại sao em cài phần mềm XXX không được trên Windows?” > Do em cài một phần mềm 64-bit trên Windows 32-bit. Các hãng làm phần mềm thường phát hành cả 2 phiên bản 32-bit lẫn 64-bit nhưng nhiều phần mềm chỉ có bản 64-bit thành ra khi tải về thì anh em không thể cài lên máy chạy Windows 32-bit được.
Trở lại với register thì đây là một bộ nhớ có dung lượng rất nhỏ và vi xử lý cần nó để truy xuất nhanh dữ liệu để tối ưu hiệu năng xử lý. Bit là đơn vị thể hiện độ rộng của register. Một register 64-bit có thể lưu nhiều dữ liệu hơn so với 32-bit và cũng chính độ rộng này ảnh hưởng đến khả năng khai thác bộ nhớ ngẫu nhiên (RAM) của CPU.
Source: https://mindovermetal.org
Category: Ứng dụng hay