DependenciesOne problem that RISC programmers face is that the process dịch - DependenciesOne problem that RISC programmers face is that the process Việt làm thế nào để nói

DependenciesOne problem that RISC p

Dependencies
One problem that RISC programmers face is that the processor can be slowed down by a poor choice of instructions. Since each instruction takes some amount of time to store its result, and several instructions are being handled at the same time, later instructions may have to wait for the results of earlier instructions to be stored. However, a simple rearrangement of the instructions in a program (called Instruction Scheduling) can remove these performance limitations from RISC programs.

One common optimization involves "common subexpression elimination." A compiler which encounters the commands:
B = 10 * (A / 3);
C = (A/ 3) / 4;
might calculate (A/3) first, put that result into a temporary variable, and then use the temporary variable in later calculations.

Another optimization involves "loop unrolling." Instead of executing a sequence of instruction inside a loop, the compiler may replicate the instructions multiple times. This eliminates the overhead of calculating and testing the loop control variable.

Compilers also perform function inlining, where a call to a small subroutine is replaced by the code of the subroutine itself. This gets rid of the overhead of a call/return sequence.

This is only a small sample of the optimizations which are available. Consult a good textbook on compilers for other ideas on how compiled code may be optimized.

RISC Pros and Cons

The advantages of RISC
Implementing a processor with a simplified instruction set design provides several advantages over implementing a comparable CISC design:

Speed. Since a simplified instruction set allows for a pipelined, superscalar design RISC processors often achieve 2 to 4 times the performance of CISC processors using comparable semiconductor technology and the same clock rates.
Simpler hardware. Because the instruction set of a RISC processor is so simple, it uses up much less chip space; extra functions, such as memory management units or floating point arithmetic units, can also be placed on the same chip. Smaller chips allow a semconductor manufacturer to place more parts on a single silicon wafer, which can lower the per-chip cost dramatically.
Shorter design cycle. Since RISC processors are simpler than corresponding CISC processors, they can be designed more quickly, and can take advantage of other technological developments sooner than corresponding CISC designs, leading to greater leaps in performance between generations.
The hazards of RISC
The transition from a CISC design strategy to a RISC design strategy isn't without its problems. Software engineers should be aware of the key issues which arise when moving code from a CISC processor to a RISC processor.

Code Quality
The performance of a RISC processor depends greatly on the code that it is executing. If the programmer (or compiler) does a poor job of instruction scheduling, the processor can spend quite a bit of time stalling: waiting for the result of one instruction before it can proceed with a subsequent instruction.
Since the scheduling rules can be complicated, most programmers use a high level language (such as C or C++) and leave the instruction scheduling to the compiler.
This makes the performance of a RISC application depend critically on the quality of the code generated by the compiler. Therefore, developers (and development tool suppliers such as Apple) have to choose their compiler carefully based on the quality of the generated code.
0/5000
Từ: -
Sang: -
Kết quả (Việt) 1: [Sao chép]
Sao chép!
Phụ thuộcMột vấn đề phải đối mặt với các lập trình viên RISC là bộ vi xử lý có thể được làm chậm bởi một sự lựa chọn nghèo của hướng dẫn. Kể từ khi mỗi hướng dẫn sẽ đưa một số lượng thời gian để lưu trữ các kết quả của nó, và một vài hướng dẫn đang được xử lý cùng một lúc, sau đó hướng dẫn có thể phải chờ kết quả của các hướng dẫn trước đó được lưu trữ. Tuy nhiên, sắp xếp lại đơn giản của các hướng dẫn trong một chương trình (được gọi là lập kế hoạch hướng dẫn) có thể loại bỏ những hạn chế hiệu quả từ chương trình RISC. Một tối ưu hóa phổ biến liên quan đến việc "loại trừ phổ biến subexpression." Một trình biên dịch mà gặp các lệnh: B = 10 * (A / 3);C = (A / 3) / 4;có thể tính toán (A/3) lần đầu tiên, đưa kết quả đó vào một biến tạm thời, và sau đó sử dụng các biến tạm thời trong các tính toán sau này. Tối ưu hóa khác liên quan đến việc "loop co." Thay vì thực hiện một chuỗi các hướng dẫn bên trong một vòng lặp, trình biên dịch có thể nhân rộng các chỉ dẫn nhiều lần. Điều này giúp loại bỏ chi phí tính toán và thử nghiệm biến điều khiển vòng lặp.Trình biên dịch cũng thực hiện chức năng inlining, nơi một cuộc gọi đến một chương trình con nhỏ được thay thế bằng các mã của chương trình con riêng của mình. Điều này được thoát khỏi chi phí của một chuỗi các cuộc gọi/trở lại.Đây là chỉ là một mẫu nhỏ của tối ưu hóa mà có sẵn. Tham khảo ý kiến một sách giáo khoa tốt về trình biên dịch cho các ý tưởng về làm thế nào biên dịch mã có thể được tối ưu hóa. RISC ưu và khuyết điểmNhững lợi thế của RISCThực hiện một bộ xử lý với một thiết kế thiết lập đơn giản hướng dẫn cung cấp một số lợi thế trong việc thực hiện một thiết kế CISC so sánh:Tốc độ. Kể từ khi một tập hợp các hướng dẫn đơn giản cho phép một bộ vi xử lý RISC pipelined, superscalar thiết kế thường đạt được 2-4 lần hiệu suất của bộ vi xử lý CISC sử dụng công nghệ bán dẫn tương tự và cùng một mức giá đồng hồ.Phần cứng đơn giản hơn. Bởi vì tập lệnh của bộ vi xử lý RISC là đơn giản như vậy, nó sử dụng nhiều không gian ít hơn chip; chức năng phụ, chẳng hạn như các đơn vị quản lý bộ nhớ hoặc nổi điểm đơn vị số học, cũng có thể được đặt trên cùng một chip. Nhỏ hơn chip cho phép các nhà sản xuất semconductor để đặt các bộ phận khác trên một wafer silicon đơn, chi phí mỗi con chip có thể thấp hơn đáng kể.Thiết kế chu kỳ ngắn hơn. Kể từ khi bộ vi xử lý RISC đơn giản hơn so với bộ vi xử lý CISC tương ứng, họ có thể được thiết kế thêm một cách nhanh chóng, và có thể tận dụng lợi thế của phát triển công nghệ khác sớm hơn tương ứng CISC thiết kế hàng đầu thế giới để nhảy cao hơn trong các hoạt động giữa các thế hệ.Mối nguy hiểm của RISCQuá trình chuyển đổi một CISC thiết kế chiến lược và chiến lược thiết kế RISC một không phải là không có vấn đề của nó. Kỹ sư phần mềm nên được nhận thức của các vấn đề quan trọng mà phát sinh khi chuyển mã từ một bộ vi xử lý CISC đến một bộ xử lý RISC. Chất lượng mãHiệu suất của bộ vi xử lý RISC phụ thuộc nhiều vào các mã mà nó thực hiện. Nếu lập trình viên (hay biên dịch) làm một công việc người nghèo của hướng dẫn lập kế hoạch, bộ vi xử lý có thể tốn khá nhiều thời gian trì hoãn: chờ đợi kết quả của một hướng dẫn trước khi nó có thể tiến hành với một hướng dẫn tiếp theo. Kể từ khi các quy tắc lập lịch trình có thể phức tạp, hầu hết các lập trình viên sử dụng một ngôn ngữ cấp cao (chẳng hạn như C hoặc c + +) và để lại hướng dẫn lập kế hoạch để trình biên dịch. Điều này làm cho hiệu suất của một ứng dụng RISC phụ thuộc nghiêm trọng vào chất lượng của các mã được tạo ra bởi trình biên dịch. Vì vậy, các nhà phát triển (và các nhà cung cấp công cụ phát triển như Apple) phải chọn của trình biên dịch cẩn thận dựa trên chất lượng của các mã được tạo ra.
đang được dịch, vui lòng đợi..
Kết quả (Việt) 2:[Sao chép]
Sao chép!
Dependencies
Một vấn đề mà các lập trình RISC phải đối mặt là bộ vi xử lý có thể bị chậm lại bởi một sự lựa chọn nghèo của hướng dẫn. Vì mỗi lệnh phải mất một khoảng thời gian để lưu trữ kết quả của nó, và một số hướng dẫn đang được xử lý cùng một lúc, sau đó hướng dẫn có thể phải chờ đợi kết quả của các hướng dẫn trước đó được lưu trữ. Tuy nhiên, sự sắp xếp lại đơn giản của các hướng dẫn trong một chương trình (gọi là Scheduling Instruction) có thể loại bỏ những hạn chế hiệu suất từ các chương trình RISC.

Một tối ưu hóa thường liên quan đến việc "xóa subexpression chung." Một trình biên dịch mà gặp các lệnh:
B = 10 * (A / 3);
C = (A / 3) / 4;
có thể tính toán (A / 3) đầu tiên, đưa kết quả đó vào một biến tạm thời, và sau đó sử dụng các biến tạm thời trong tính toán sau đó.

Tối ưu hóa khác liên quan đến "vòng unrolling." Thay vì thực hiện một chuỗi các lệnh bên trong một vòng lặp, trình biên dịch có thể tái tạo các hướng dẫn nhiều lần. Điều này giúp loại bỏ sự cần thiết của việc tính toán và thử nghiệm các biến điều khiển vòng lặp.

Trình biên dịch cũng thực hiện chức năng nội tuyến, nơi mà một cuộc gọi đến một chương trình con nhỏ được thay thế bởi mã của chương trình con riêng của mình. Điều này giúp loại bỏ sự cần thiết của một chuỗi cuộc gọi / trả lại.

Đây là chỉ một mẫu nhỏ của tối ưu hóa trong đó có sẵn. Tham khảo một số sách giáo khoa tốt trên các trình biên dịch cho những ý tưởng khác về cách mã biên dịch có thể được tối ưu hóa.

RISC Ưu điểm và Nhược điểm

Những lợi thế của RISC
Thực hiện một bộ xử lý với một tập lệnh đơn giản hóa thiết kế cung cấp nhiều lợi thế hơn việc thực hiện một thiết kế CISC so sánh:

Tốc độ. Kể từ khi một tập lệnh đơn giản hóa cho phép một pipelined, bộ vi xử lý thiết kế RISC superscalar thường đạt được 2-4 lần hiệu suất của bộ xử lý CISC sử dụng công nghệ bán dẫn có thể so sánh và giá đồng hồ giống nhau.
Phần cứng đơn giản. Bởi vì những hướng dẫn của một bộ xử lý RISC là đơn giản như vậy, nó sử dụng không gian con chip ít hơn nhiều; chức năng bổ sung, chẳng hạn như các đơn vị quản lý bộ nhớ, đơn vị điểm số học nổi cũng có thể được đặt trên cùng một chip. Chip nhỏ hơn cho phép một nhà sản xuất semconductor đặt phần hơn trên một miếng silicon đơn, mà có thể làm giảm chi phí cho mỗi chip đáng kể.
Chu trình thiết kế ngắn hơn. Kể từ bộ vi xử lý RISC là đơn giản hơn tương ứng với các bộ xử lý CISC, chúng có thể được thiết kế một cách nhanh chóng hơn, và có thể tận dụng lợi thế của sự phát triển công nghệ khác sớm hơn tương ứng với thiết kế CISC, dẫn đến bước nhảy lớn trong hoạt động giữa các thế hệ.
Các mối nguy hiểm của RISC
Việc chuyển đổi từ một chiến lược thiết kế CISC đến một chiến lược thiết kế RISC là không phải không có vấn đề của nó. Kỹ sư phần mềm cần phải nhận thức các vấn đề quan trọng phát sinh khi chuyển mã từ một bộ xử lý CISC với một bộ xử lý RISC.

Mã Chất lượng
Hiệu suất của một bộ xử lý RISC phụ thuộc rất nhiều vào các mã mà nó được thực hiện. Nếu lập trình viên (hoặc trình biên dịch) làm một công việc kém của lịch hướng dẫn, bộ vi xử lý có thể dành một chút thời gian trì hoãn: chờ đợi kết quả của một hướng dẫn trước khi nó có thể tiến hành với một hướng dẫn tiếp theo.
Kể từ khi các quy tắc lập kế hoạch có thể phức tạp, hầu hết các lập trình viên sử dụng một ngôn ngữ cấp cao (như C hay C ++) và để lại lịch trình giảng dạy để trình biên dịch.
Điều này làm cho hiệu suất của một ứng dụng RISC phụ thuộc rất nhiều vào chất lượng của các mã được tạo ra bởi trình biên dịch. Do đó, các nhà phát triển (và các nhà cung cấp công cụ phát triển như Apple) phải chọn trình biên dịch của họ một cách cẩn thận dựa trên chất lượng của mã được tạo ra.
đang được dịch, vui lòng đợi..
Kết quả (Việt) 3:[Sao chép]
Sao chép!
Phụ thuộc vàoLập trình viên đối mặt với bộ xử lý RISC là, có thể hướng dẫn lựa chọn vấn đề giảm nghèo túng.Vì mọi người đều cần thời gian để lưu trữ và xử lý nhiều kết quả của nó, đồng thời ra lệnh, sau đó có thể cần chờ chỉ thị hướng dẫn đầu. Kết quả được lưu trữ.Tuy nhiên, một chương trình đơn giản trong hướng dẫn sắp xếp lại (gọi là lệnh điều động) có thể loại bỏ những hạn chế RISC hiệu suất từ chương trình.Một tối ưu hóa thường liên quan đến "Public tử biểu thức loại bỏ." một trình biên dịch đã xảy ra lệnh:B = 10 * (A / 3);(A / 3) / 4;Có thể bắt đầu tính toán (A / 3), sẽ có kết quả vào biến tạm thời, rồi sau được sử dụng trong tính toán biến tạm thời..Tối ưu hóa khác liên quan đến việc "mở ra một chu trình thay thế." thực hiện trong chu trình lệnh, trình biên dịch có thể sẽ lặp lại nhiều lần thị.Nó loại bỏ tính toán và kiểm tra kiểm soát chi phí biến vòng lặp.Trình biên dịch thực hiện hàm nội tuyến, đang gọi một chương trình con là những chương trình con của mật mã thay thế.Thoát khỏi một chuỗi gọi / trở về chi phí.Đó chỉ là một mẫu nhỏ tối ưu hóa sử dụng.Tư vấn được quan niệm khác trên sách giáo khoa của trình biên dịch biên dịch mã có thể được tối ưu hóa như thế nào.Lợi hại của RISCLợi thế của RISCMột tập lệnh đơn giản hóa của thiết kế cung cấp thực hiện hơn CISC thiết kế chuyên thực hiện một vài ví dụ:Tốc độ.Vì đơn giản hóa tập lệnh cho dây chuyền sản xuất, một đại lượng vô hướng cấu trúc thiết kế hệ thống xử lý RISC thường đạt được hiệu suất của 2 bộ xử lý CISC được dùng trong công nghệ bán dẫn hơn 4 lần cùng tốc độ của đồng hồ.Đơn giản là phần cứng.Vì thiết lập một bộ xử lý RISC lệnh đơn giản như vậy, nó sử dụng chip ít không gian; thêm chức năng, như đơn vị quản lý bộ nhớ và điểm phù động đơn vị, cũng có thể được đặt ở trên cùng một con chip.Nhỏ hơn cho phép nhà sản xuất chip bán dẫn sẽ thêm phần trên một chip silicon, do đó làm giảm chi phí cho mỗi con chip.Thiết kế của chu kỳ ít hơn thế.Vì bộ xử lý RISC hơn tương ứng với bộ xử lý CISC đơn giản hơn, có thể nhanh hơn, và có thể sử dụng công nghệ khác phát triển hơn tương ứng với CISC thiết kế nhanh hơn, dẫn đến hiệu suất giữa thế hệ lớn hơn rất phát triển.RISC hại gì.Từ CISC thiết kế chiến lược trong chiến lược RISC thiết kế không phải là không có vấn đề gì.Kỹ sư phần mềm. Nên biết khi di chuyển từ CISC xuất hiện mã xử lý vấn đề xử lý RISC chìa khóa.Mật mã lượngMột bộ xử lý RISC lớn phụ thuộc vào hiệu suất của mật mã, nó thực hiện là.Nếu lập trình viên (hay chương trình) được lệnh không được điều đi làm, một bộ xử lý có thể dành thời gian: chờ đợi một kết quả thực hiện Chỉ thị mới có thể mở khóa cho chỉ thị.Vì điều luật có thể là phức tạp, hầu hết các lập trình viên sử dụng ngôn ngữ cao cấp (như C hay C++) và ra lệnh điều động của trình biên dịch.Điều đó làm cho một ứng dụng RISC diễn chủ yếu phụ thuộc vào chất lượng tạo ra bởi trình biên dịch mã.Do đó, các nhà phát triển (và công cụ phát triển nhà cung cấp, như Apple) phải lựa chọn kỹ trên nền của trình biên dịch của họ tạo ra mã chất lượng.
đ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: