2011-gre-cs-practice-book.pdf/Q64 — различия между версиями

Материал из DISCOPAL
Перейти к: навигация, поиск
 
(не показаны 4 промежуточные версии 2 участников)
Строка 1: Строка 1:
 
== Вопрос: Q64-08c765 ==
 
== Вопрос: Q64-08c765 ==
 +
Рассмотрите следующую последовательность инструкций для гипотетического RISC-процессора:
  
<i>Тут вставьте перевод вопроса.
+
;T: R1  ←  R2 + R3 
Используйте [https://wiki.4intra.net/Help:%D0%A4%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5 возможности разметки],
+
;U: R4  ←  R5 + R6 
включая формулы и т.п, если будут графы — посмотрите как задать их текстом https://wiki.4intra.net/Graphviz .
+
;V: R5  ←  R7 + R8 
Если код — теги «code-pascal», «code-c» или «code-python».
+
;W: R9  ←  R5 + R1 
 +
;X: R10  ←  R4 + R1 
 +
;Y: R11  ←  R10 + R1 
 +
;Z: R9  ←  R1 + R4 
  
Старайтесь нетривиальные понятия, особенно незнакомые вам, найти ссылку на википедию и вставить (нейросети лажают!).
+
Какой из следующих вариантов представляет допустимый порядок выполнения инструкций на процессоре с переупорядочиванием, но без переименования регистров?
Это важно, чтобы найти корректный перевод (то, что в википедии, или на худой конец — точно массово гуглится).
+
 
+
Потом конечно сотрите инструкции, которые тут курсивом.</i>
+
  
 
=== Ответы ===
 
=== Ответы ===
<i>Если ответы простые, однострочные, используйте простой способ задания ответов списком, типа так
+
* Правильный ответ: T, U, X, V, W, Z, Y 
(префикс «Правильный ответ:» — это дословно, для правильного ответа, неважно, какой он будет в списке)</i>
+
* T, U, X, V, Z, W, Y 
 +
* T, V, U, X, W, Y, Z 
 +
* U, T, V, Y, X, W, Z 
 +
* U, T, X, W, Y, Z,
  
* Правильный ответ: тут реально правильный ответ
+
=== Объяснение ===
* неправильный ответ
+
{{cstest-source|2011-gre-cs-practice-book.pdf|45|64}}
* еще какой-то неправильный ответ
+
* еще какой-то неправильный ответ
+
* еще какой-то неправильный ответ
+
  
<i>Если ответы длинные, многострочные, или там графы, используйте
+
Для правильного выполнения инструкций без переименования регистров важно учитывать зависимости между регистрами. Если инструкция использует значение регистра, которое обновляется другой инструкцией, она не может выполняться раньше этой инструкции.
[https://wiki.4intra.net/MediawikiQuizzer/ru#.D0.9E.D1.82.D0.B2.D0.B5.D1.82.D1.8B способ задания ответов разделами],
+
Но такое очень редко встречается. </i>
+
 
+
 
+
=== Объяснение ===
+
<i>Сначала заполните номер страницы с этим вопросом
+
{{cstest-source|2011-gre-cs-practice-book.pdf|тут-номер-страницы-с-вопросом-64|64}}
+
  
Если все сделаете правильно, по ссылке выше будет открываться правильная страница в правильном PDFе.
+
* T выполняется первой, так как записывает значение в R1.
 +
* V можно выполнить сразу после T, чтобы подготовить R5.
 +
* U можно выполнить, так как оно не зависит от других.
 +
* X идет после T.
 +
* W требует выполнения T и V.
 +
* Y требует выполнения X.
 +
* Z можно выполнить последней после U и T.
  
Ну и наконец, вики-разметкой напишите ваше понимание, почему правильный ответ — правильный, а [[2004-gre-cs-practice-book.pdf/Q16|неправильные варианты — неправильны]].
+
[[Участник:StasFomin|StasFomin]] 21:47, 11 января 2025 (UTC): Тут бы граф с путем когда-нибудь нарисовать, ну ладно.
Тут тоже могут быть полезны [[2004-gre-cs-practice-book.pdf/Q03|ссылки на википедию]],  
+
решение вами [[2004-gre-cs-practice-book.pdf/Q12|рекуррентных уравнений в sympy]].
+
  
</i>
+
{{question-ok|[[Участник:StasFomin|StasFomin]] 21:47, 11 января 2025 (UTC)}}
  
{{question-ok|}}
+
[[Категория:Процессорная архитектура]]
{{reserve-task|[[Участник:Nikitashapovalov|Nikitashapovalov]] 20:59, 8 января 2025 (UTC)}}
+

Текущая версия на 21:49, 11 января 2025

Вопрос: Q64-08c765

Рассмотрите следующую последовательность инструкций для гипотетического RISC-процессора:

T
R1 ← R2 + R3
U
R4 ← R5 + R6
V
R5 ← R7 + R8
W
R9 ← R5 + R1
X
R10 ← R4 + R1
Y
R11 ← R10 + R1
Z
R9 ← R1 + R4

Какой из следующих вариантов представляет допустимый порядок выполнения инструкций на процессоре с переупорядочиванием, но без переименования регистров?

Ответы

  • Правильный ответ: T, U, X, V, W, Z, Y
  • T, U, X, V, Z, W, Y
  • T, V, U, X, W, Y, Z
  • U, T, V, Y, X, W, Z
  • U, T, X, W, Y, Z, V

Объяснение

Исходники — вопрос 64 на 45 странице книги «2011-gre-cs-practice-book.pdf»

Для правильного выполнения инструкций без переименования регистров важно учитывать зависимости между регистрами. Если инструкция использует значение регистра, которое обновляется другой инструкцией, она не может выполняться раньше этой инструкции.

  • T выполняется первой, так как записывает значение в R1.
  • V можно выполнить сразу после T, чтобы подготовить R5.
  • U можно выполнить, так как оно не зависит от других.
  • X идет после T.
  • W требует выполнения T и V.
  • Y требует выполнения X.
  • Z можно выполнить последней после U и T.

StasFomin 21:47, 11 января 2025 (UTC): Тут бы граф с путем когда-нибудь нарисовать, ну ладно.