Thanh ghi
Trong kiến trúc máy tính, một thanh ghi là một bộ nhớ dung lượng nhỏ và rất nhanh được sử dụng để tăng tốc độ xử lý của các chương trình máy tính bằng cách cung cấp các truy cập trực tiếp đến các giá trị cần dùng. Hầu hết, nhưng không phải tất cả, các máy ...
Trong kiến trúc máy tính, một thanh ghi là một bộ nhớ dung lượng nhỏ và rất nhanh được sử dụng để tăng tốc độ xử lý của các chương trình máy tính bằng cách cung cấp các truy cập trực tiếp đến các giá trị cần dùng. Hầu hết, nhưng không phải tất cả, các máy tính hiện đại hoạt động theo nguyên lý chuyển dữ liệu từ bộ nhớ chính vào các thanh ghi, tính toán trên chúng, sau đó chuyển kết quả vào bộ nhớ chính.
Các thanh ghi xử lý là phần đầu tiên của phân cấp bộ nhớ, và cung cấp nhanh nhất vào hệ thống để xử lý dữ liệu. Thuật ngữ này thường được dùng để nói đến một tập các thanh ghi có thể được chỉ trực tiếp cho việc nhập hay xuất các câu lệnh, xem thêm ở tập lệnh. Chúng được gọi là " kiến trúc thanh ghi". Ví dụ,
Đưa các biến số thường dùng vào thanh ghi là một hoạt động then chốt làm tăng hiệu ứng của chương trình. Việc này có tên là register allocation và thường được thực hiện bởi một trình biên dịch trong giai đoạn phát sinh mã hoá.
thường được đo bằng các bit nó có thể chứa, ví dụ, một thanh ghi "8-bit" hay thanh ghi "32-bit". Các thanh ghi hiện nay thường được xem như file thanh ghi - register file, nhưng chúng cũng được dùng riêng rẽ flip-flops, tốc độ cao core memory, thin film memory, và các cách khác trong nhiều máy móc.
Có một số phân lớp các thanh ghi tùy theo nội dung:
- khả hiện - Có hai loại. dữ liệu và thanh ghi địa chỉ.
- dữ liệu được dùng để lưu số nguyên (xem thanh ghi số thực dưới đây). Trong một số bộ CPU hiện nay và trước đây, có một thanh ghi đặc biệt là thanh ghi tích lũy tích lũy, được dùng cho nhiều tính toán.
- địa chỉ chứa địa chỉ bộ nhớ và được dùng để truy cập bộ nhớ. Trong một số CPU, có một thanh ghi địa chỉ đặc biệt thanh ghi chỉ mục, dù chúng thường được dùng để sửa đổi địa chỉ hơn là chứa địa chỉ.
- điều kiện chứa giá trị thực thường dùng để quyết định hoật động thực thi lệnh
- đa năng (GPRs) có thể chứa cả dữ liệu lẫn địa chỉ., là kết hợp giữa thanh ghi dữ liệu và thanh ghi địa chỉ
- dấu phẩy động(FPRs) dùng để chứa các kiểu số
- hằng số chứa các giá trị đọc được (Ví dụ: 0, 1, pi, ...).
- định hướng chứa dữ liệu cho việc xử lý định hướng đối tượng, thực hiện bởi lệnh SIMD (lệnh đơn, bội dữ kiện)
- chuyên biệt chứa trạng thái chương trình; thường bao gồm con trỏ chỉ lệnh, con trỏ ngăn xếp, và thanh ghi trạng thái.
- chỉ lệnh chứa lệnh tạm huỷ
- chỉ mục dùng cho sửa đổi địa chỉ tác tử trong quá trình thực hiện 1 chương trình
- Trong một số cấu trúc, thanh ghi kiểu mẫu (còn được gọi là thanh ghi thiết bị riêng biệt) chứa dữ liệu và thiết lập liên quan đến bộ xử lý. Vì các thanh ghi này được thiết kế gắn liền với bộ xử lý đặc trưng nên chúng không thể giữ nguyên chuẩn qua các thế hệ của bộ xử lý.
- điều khiển và trạng thái – Có 3 loại: chương trình phản hồi, thanh ghi chỉ lệnh, chương trình trạng thái từ.
- liên quan đến tìm nạp thông tin từ bộ nhớ truy cập ngẫu nhiên (RAM), 1 tập hợp lưu giữ các thanh ghi được định vị trên các chip riêng biệt từ CPU (không giống đa số các loại trên, đây thông thường là những thanh ghi không có cấu trúc):
- bộ nhớ trung gian
- bộ nhớ địa chỉ
- bộ nhớ kiểu miền
ổ cứng cũng tương tự nhưng ở ngoài CPU
Bảng dưới đây hiển thị số lượng thanh ghi của vài bộ vi xử lý chính hiện nay: