Bus địa chỉ 20 bit cho phép quản lý bộ nhớ với dung lượng tối đa bằng bao nhiêu

Địa chỉ bộ nhớ

Trong máy tính , địa chỉ bộ nhớ là một tham chiếu đến một vị trí bộ nhớ cụ thể được phần mềm và phần cứng sử dụng ở nhiều cấp độ khác nhau . Địa chỉ bộ nhớ là các dãy chữ số có độ dài cố định được hiển thị và xử lý theo quy ước như các số nguyên không dấu . Ngữ nghĩa số như vậy tự nó dựa trên các tính năng của CPU (chẳng hạn như con trỏ lệnh và thanh ghi địa chỉ tăng dần ), cũng như khi sử dụng bộ nhớ như một mảng được xác nhận bởi các ngôn ngữ lập trình khác nhau .

Một máy tính kỹ thuật số là bộ nhớ chính bao gồm nhiều vị trí bộ nhớ . Mỗi vị trí bộ nhớ có một địa chỉ vật lý là một mã. CPU (hoặc thiết bị khác) có thể sử dụng mã để truy cập vị trí bộ nhớ tương ứng. Nói chung, chỉ phần mềm hệ thống , tức là BIOS , hệ điều hành và một số chương trình tiện ích chuyên dụng (ví dụ: trình kiểm tra bộ nhớ ), giải quyết bộ nhớ vật lý bằng cách sử dụng toán hạng mã máy hoặc thanh ghi bộ xử lý , hướng dẫn CPU hướng một thiết bị phần cứng, được gọi là bộ điều khiển bộ nhớ , đến sử dụng bus bộ nhớ hoặcbus hệ thống , hoặc bus điều khiển , địa chỉ và dữ liệu riêng biệt , để thực hiện các lệnh của chương trình. Bus của bộ điều khiển bộ nhớ bao gồm một số đường thẳng song song , mỗi đường được biểu diễn bằng một chữ số nhị phân (bit). Chiều rộng của bus, và do đó số lượng đơn vị lưu trữ có thể định địa chỉ và số bit trong mỗi đơn vị, khác nhau giữa các máy tính.

Một chương trình máy tính sử dụng các địa chỉ bộ nhớ để thực thi mã máy , và để lưu trữ và lấy dữ liệu . Trong các máy tính ban đầu, địa chỉ vật lý và logic tương ứng với nhau, nhưng kể từ khi bộ nhớ ảo ra đời, hầu hết các chương trình ứng dụng không có kiến ​​thức về địa chỉ vật lý. Đúng hơn, chúng định địa chỉ logic , hoặc địa chỉ ảo , sử dụng đơn vị quản lý bộ nhớ của máy tính và ánh xạ bộ nhớ hệ điều hành ; xem bên dưới .

Hầu hết các máy tính hiện đại đều có thể định địa chỉ theo byte . Mỗi địa chỉ xác định một byte duy nhất ( tám bit ) lưu trữ. Dữ liệu lớn hơn một byte có thể được lưu trữ trong một chuỗi các địa chỉ liên tiếp. Có tồn tại các máy tính có địa chỉ từ , trong đó đơn vị lưu trữ có thể định địa chỉ tối thiểu chính xác là từ của bộ xử lý . Ví dụ, Data General Nova máy tính mini , và Texas Instruments TMS9900 và National Semiconductor IMP-16 máy vi tính sử dụng 16 bit từ , và có rất nhiều 36-bit máy tính mainframe (ví dụ, PDP-10) đã sử dụng địa chỉ từ 18 bit , không phải định địa chỉ byte , tạo ra một không gian địa chỉ gồm 2 18 từ 36 bit, khoảng 1 megabyte dung lượng lưu trữ. Hiệu quả của việc định địa chỉ bộ nhớ phụ thuộc vào kích thước bit của bus được sử dụng cho các địa chỉ - càng sử dụng nhiều bit, máy tính càng có nhiều địa chỉ. Ví dụ: máy định địa chỉ 8-bit-byte có bus địa chỉ 20-bit (ví dụ: Intel 8086 ) có thể đánh địa chỉ 2 20 (1.048.576) vị trí bộ nhớ hoặc một MiB bộ nhớ, trong khi bus 32 bit (ví dụ: Intel 80386 ) địa chỉ 2 32 (4,294,967,296) vị trí hoặc 4 GiBKhông gian địa chỉ. Ngược lại, máy định địa chỉ từ 36 bit với bus địa chỉ 18 bit chỉ địa chỉ 2 vị trí 18 (262,144) 36 bit (9,437,184 bit), tương đương với 1,179,648 byte 8 bit, hoặc 1152 KiB , hoặc 1,125 MiB - nhiều hơn một chút so với 8086.

Một số máy tính cũ hơn (máy tính thập phân ), có thể giải nén chữ số thập phân . Ví dụ, mỗi địa chỉ trong bộ nhớ lõi từ của IBM 1620 xác định một chữ số thập phân được mã hóa nhị phân sáu bit , bao gồm một bit chẵn lẻ , bit cờ và bốn bit số. Năm 1620 sử dụng địa chỉ thập phân gồm 5 chữ số, vì vậy về lý thuyết, địa chỉ cao nhất có thể là 99,999. Trên thực tế, CPU hỗ trợ 20.000 vị trí bộ nhớ và có thể thêm tối đa hai đơn vị bộ nhớ ngoài tùy chọn, mỗi đơn vị hỗ trợ 20.000 địa chỉ, với tổng số 60.000 (0000059999).


Bus địa chỉ 20 bit cho phép quản lý bộ nhớ với dung lượng tối đa bằng bao nhiêu
Trong máy tính sử dụng bộ nhớ ảo , việc truy cập vị trí tương ứng với một địa chỉ bộ nhớ có thể liên quan đến nhiều cấp độ.