ScholarGate
Trợ lý

Các Chế độ Định địa chỉ

Các chế độ định địa chỉ là các quy tắc mà theo đó một lệnh chỉ định vị trí của các toán hạng của nó — trong một thanh ghi, được nhúng dưới dạng tức thời, hoặc trong bộ nhớ tại một địa chỉ được tính toán từ các thanh ghi và độ lệch.

Tìm chủ đề với PaperMindSắp ra mắtFind papers & topics
Tools & resources
Tải xuống bản trình chiếu
Learn & explore
VideoSắp ra mắt

Definition

Chế độ định địa chỉ là một phương pháp được chỉ định bởi một lệnh để xác định vị trí của một toán hạng, từ các giá trị được giữ trực tiếp trong các thanh ghi hoặc chính lệnh đó đến các địa chỉ được tính toán từ các thanh ghi cơ sở, thanh ghi chỉ mục và độ dịch chuyển.

Scope

Chủ đề này bao gồm các cách các toán hạng được đặt tên và định vị: tức thời, thanh ghi, gián tiếp thanh ghi, cơ sở cộng độ dịch chuyển, được lập chỉ mục, tương đối PC, và các chế độ tính toán phức tạp hơn. Nó đề cập đến cách các chế độ định địa chỉ ảnh hưởng đến kích thước mã, số lượng lệnh và độ phức tạp của phần cứng. Nó không bao gồm cách các lệnh được mã hóa thành bit (định dạng và mã hóa lệnh) và dịch từ địa chỉ ảo sang địa chỉ vật lý của hệ thống (bộ nhớ ảo và phân trang).

Core questions

  • Mỗi chế độ định địa chỉ tính toán địa chỉ hiệu dụng hoặc giá trị của một toán hạng như thế nào?
  • Những chế độ định địa chỉ nào được sử dụng thường xuyên nhất trong các chương trình thực tế, và tại sao?
  • Các chế độ định địa chỉ phong phú hơn làm giảm số lượng lệnh như thế nào với chi phí phần cứng và độ phức tạp giải mã?
  • Tại sao các kiến trúc tải-lưu trữ lại hạn chế truy cập bộ nhớ vào một vài chế độ đơn giản?

Key concepts

  • định địa chỉ tức thời
  • định địa chỉ thanh ghi
  • định địa chỉ gián tiếp thanh ghi
  • cơ sở cộng độ dịch chuyển
  • định địa chỉ được lập chỉ mục
  • định địa chỉ tương đối PC
  • tính toán địa chỉ hiệu dụng
  • hạn chế tải-lưu trữ

Mechanisms

Mỗi chế độ định địa chỉ định nghĩa cách bộ xử lý lấy một toán hạng. Các toán hạng tức thời được mã hóa trong lệnh; các toán hạng thanh ghi được đọc từ tệp thanh ghi; các toán hạng bộ nhớ có một địa chỉ hiệu dụng được tính bằng cách cộng một thanh ghi cơ sở, một chỉ mục có tỷ lệ tùy chọn và một độ dịch chuyển. Định địa chỉ tương đối PC tạo ra các địa chỉ tương đối so với bộ đếm chương trình, hỗ trợ mã độc lập vị trí và các đích rẽ nhánh.

Clinical relevance

Các chế độ định địa chỉ định hình cách các trình biên dịch tạo mã: cơ sở cộng độ dịch chuyển ánh xạ tự nhiên đến các trường cấu trúc và các biến ngăn xếp, các chế độ được lập chỉ mục đến truy cập mảng, và định địa chỉ tương đối PC đến các tệp thực thi độc lập vị trí và các thư viện chia sẻ. Các thiết kế tải-lưu trữ RISC cố tình giữ cho việc định địa chỉ bộ nhớ đơn giản để dễ dàng đường ống, trong khi các máy CISC cung cấp các chế độ phong phú hơn cho mật độ mã.

History

Các kiến trúc ban đầu và CISC đã tích lũy nhiều chế độ định địa chỉ phức tạp, bao gồm các dạng gián tiếp bộ nhớ và tự động tăng. Các nghiên cứu thực nghiệm về việc sử dụng lệnh cho thấy rằng một tập hợp nhỏ các chế độ đơn giản chiếm phần lớn các truy cập, thúc đẩy quyết định của RISC là chỉ hỗ trợ một số ít chế độ và giới hạn truy cập bộ nhớ vào các lệnh tải và lưu trữ.

Key figures

  • John L. Hennessy
  • David A. Patterson

Related topics

Seminal works

  • hennessy2019
  • patterson2020

Frequently asked questions

Tại sao các kiến trúc RISC lại hỗ trợ rất ít chế độ định địa chỉ?
Các nghiên cứu cho thấy rằng các chương trình chủ yếu sử dụng một vài chế độ đơn giản. Hạn chế truy cập bộ nhớ vào gián tiếp thanh ghi và cơ sở cộng độ dịch chuyển giúp đường ống đơn giản và tính toán địa chỉ hiệu dụng nhanh chóng, trong khi các trình biên dịch tổng hợp bất kỳ mẫu truy cập phong phú hơn nào từ các nguyên thủy này.
Định địa chỉ tương đối PC được sử dụng để làm gì?
Định địa chỉ tương đối PC tính toán một địa chỉ như một độ lệch từ bộ đếm chương trình. Nó được sử dụng cho các đích rẽ nhánh và nhảy và để truy cập dữ liệu gần đó, cho phép mã độc lập vị trí chạy đúng bất kể nó được tải ở đâu trong bộ nhớ.

Methods for this concept

Related concepts