Reading the program counterWhen an instruction reads the PC, the value dịch - Reading the program counterWhen an instruction reads the PC, the value Việt làm thế nào để nói

Reading the program counterWhen an

Reading the program counter
When an instruction reads the PC, the value read depends on which instruction set it comes from:

• For an ARM instruction, the value read is the address of the instruction plus 8 bytes. Bits [1:0] of this value are always zero, because ARM instructions are always word-aligned.
• For a Thumb instruction, the value read is the address of the instruction plus 4 bytes. Bit [0] of this value is always zero, because Thumb instructions are always halfword-aligned.
This way of reading the PC is primarily used for quick, position-independent addressing of nearby instructions and data, including position-independent branching within a program.
An exception to the above rule occurs when an ARM STR or STM instruction stores R15. Such instructions can store either the address of the instruction plus 8 bytes, like other instructions that read R15, or the address of the instruction plus 12 bytes. Whether the offset of 8 or the offset of 12 is used is IMPLEMENTATION DEFINED. An implementation must use the same offset for all ARM STR and STM instructions that store R15. It cannot use 8 for some of them and 12 for others.
Because of this exception, it is usually best to avoid the use of STR and STM instructions that store R15. If this is difficult, use a suitable instruction sequence in the program to ascertain which offset the implementation uses. For example, if R0 points to an available word of memory, then the following instructions put the offset of the implementation in R0:

SUB R1, PC, #4 ; R1 = address of following STR instruction STR PC, [R0] ; Store address of STR instruction + offset, LDR R0, [R0] ; then reload it
SUB R0, R0, R1 ; Calculate the offset as the difference
0/5000
Từ: -
Sang: -
Kết quả (Việt) 1: [Sao chép]
Sao chép!
Đọc truy cập chương trìnhKhi một hướng dẫn đọc máy PC, giá trị đọc phụ thuộc vào tập lệnh mà nó xuất phát từ:• Cho một tay hướng dẫn, giá trị đọc là địa chỉ của các hướng dẫn cộng với 8 byte. Bit [1:0] của giá trị này là luôn luôn zero, bởi vì cánh tay hướng dẫn được luôn luôn từ liên kết.• Đối với một ngón tay cái hướng dẫn, giá trị đọc là địa chỉ của các hướng dẫn cộng với 4 byte. Chút [0] giá trị này là luôn luôn zero, bởi vì ngón tay cái hướng dẫn là luôn luôn liên kết halfword.Bằng cách này của đọc máy PC chủ yếu được sử dụng cho nhanh chóng, độc lập vị trí địa chỉ của hướng dẫn gần đó và dữ liệu, bao gồm cả vị trí độc lập phân nhánh trong một chương trình.Một ngoại lệ cho quy tắc trên xảy ra khi một STR cánh tay hoặc STM hướng dẫn mua sắm R15. Hướng dẫn như vậy có thể lưu trữ hoặc địa chỉ của các hướng dẫn cộng với 8 byte, như các hướng dẫn khác đọc R15, hoặc địa chỉ của các hướng dẫn cộng với 12 byte. Cho dù đối tượng dời hình 8 hoặc đối tượng dời hình 12 được sử dụng là thực hiện xác định. Thực hiện một phải sử dụng cùng một đối tượng dời hình cho tất cả các cánh tay STR và STM hướng dẫn lưu trữ R15. Nó không thể sử dụng 8 cho một số người trong số họ và 12 đối với những người khác.Bởi vì trường hợp ngoại lệ này, nó là thường là tốt nhất để tránh việc sử dụng các hướng dẫn STR và STM lưu trữ R15. Nếu điều này là khó khăn, sử dụng một trình tự phù hợp hướng dẫn trong chương trình để xác định đó bù đắp sử dụng thực hiện. Ví dụ, nếu R0 chỉ một từ có sẵn của bộ nhớ, sau đó các hướng dẫn sau đặt đối tượng dời hình về việc thực hiện trong R0:TIỂU R1, PC, #4; R1 = địa chỉ của sau hướng dẫn STR STR PC, [R0]; Lưu trữ địa chỉ của hướng dẫn STR + bù đắp, LDR R0, [R0]; sau đó tải lại nóTIỂU R0, R0, R1; Tính toán đối tượng dời hình như sự khác biệt
đang được dịch, vui lòng đợi..
Kết quả (Việt) 2:[Sao chép]
Sao chép!
Đọc truy cập chương trình
Khi một lệnh đọc PC, đọc giá trị phụ thuộc vào những hướng dẫn nó đến từ: • Đối với một lệnh ARM, giá trị đọc được là địa chỉ của lệnh cộng với 8 byte. Bit [1: 0]. Các giá trị này là luôn bằng không, bởi vì hướng dẫn ARM luôn từ canh • Đối với một lệnh Thumb, giá trị đọc được là địa chỉ của lệnh cộng với 4 byte. Bit [0] của giá trị này luôn là số không, bởi vì hướng dẫn Thumb luôn nữa vòng trái đất canh. Bằng cách này đọc các PC được sử dụng chủ yếu cho nhanh, độc lập vị trí giải quyết các hướng dẫn gần đó và dữ liệu, bao gồm độc lập vị trí phân nhánh trong một chương trình . Một ngoại lệ cho quy tắc ở trên xảy ra khi một STR hoặc ARM STM cửa hàng hướng dẫn R15. Hướng dẫn như vậy có thể lưu trữ một trong hai địa chỉ của lệnh cộng với 8 byte, như hướng dẫn khác mà đọc R15, hoặc các địa chỉ của lệnh cộng với 12 byte. Cho dù sự bù đắp của 8 hoặc bù đắp của 12 được sử dụng là THỰC HIỆN NGHĨA. An thực hiện phải sử dụng cùng một hiệu cho tất cả các lệnh ARM STR và STM lưu trữ R15. Nó không thể sử dụng 8 cho một số trong số họ và 12 người khác. Bởi vì các ngoại lệ này, nó thường là tốt nhất để tránh việc sử dụng các STR và STM hướng dẫn lưu trữ R15. Nếu đây là khó khăn, sử dụng một chuỗi hướng dẫn phù hợp trong chương trình để xác định đó bù đắp việc thực hiện sử dụng. Ví dụ, nếu R0 điểm đến một từ có sẵn của bộ nhớ, sau đó các hướng dẫn sau đây đưa bù đắp của việc thực hiện trong R0: SUB R1, PC, # 4; R1 = địa chỉ của sau STR hướng dẫn STR PC, [R0]; Cửa hàng địa chỉ giảng dạy STR + bù đắp, LDR R0, [R0]; sau đó tải lại nó SUB R0, R0, R1; Tính toán bù đắp như sự khác biệt









đang được dịch, vui lòng đợi..
 
Các ngôn ngữ khác
Hỗ trợ công cụ dịch thuật: Albania, Amharic, Anh, Armenia, Azerbaijan, Ba Lan, Ba Tư, Bantu, Basque, Belarus, Bengal, Bosnia, Bulgaria, Bồ Đào Nha, Catalan, Cebuano, Chichewa, Corsi, Creole (Haiti), Croatia, Do Thái, Estonia, Filipino, Frisia, Gael Scotland, Galicia, George, Gujarat, Hausa, Hawaii, Hindi, Hmong, Hungary, Hy Lạp, Hà Lan, Hà Lan (Nam Phi), Hàn, Iceland, Igbo, Ireland, Java, Kannada, Kazakh, Khmer, Kinyarwanda, Klingon, Kurd, Kyrgyz, Latinh, Latvia, Litva, Luxembourg, Lào, Macedonia, Malagasy, Malayalam, Malta, Maori, Marathi, Myanmar, Mã Lai, Mông Cổ, Na Uy, Nepal, Nga, Nhật, Odia (Oriya), Pashto, Pháp, Phát hiện ngôn ngữ, Phần Lan, Punjab, Quốc tế ngữ, Rumani, Samoa, Serbia, Sesotho, Shona, Sindhi, Sinhala, Slovak, Slovenia, Somali, Sunda, Swahili, Séc, Tajik, Tamil, Tatar, Telugu, Thái, Thổ Nhĩ Kỳ, Thụy Điển, Tiếng Indonesia, Tiếng Ý, Trung, Trung (Phồn thể), Turkmen, Tây Ban Nha, Ukraina, Urdu, Uyghur, Uzbek, Việt, Xứ Wales, Yiddish, Yoruba, Zulu, Đan Mạch, Đức, Ả Rập, dịch ngôn ngữ.

Copyright ©2025 I Love Translation. All reserved.

E-mail: