Рубрики

ВОРОТА | GATE CS 2008 | Вопрос 76

Задержка ветвления может помочь в управлении опасностями управления.

Для всех отложенных инструкций условного перехода, независимо от того, оценивается ли условие как истинное или ложное,
(A) выполняется инструкция, следующая за инструкцией условного перехода в памяти
(B) первая инструкция в проходном пути выполнена
(C) первая инструкция в выбранном пути выполняется
(D) ветвь выполняется дольше, чем любая другая инструкция

Ответ: (D)
Объяснение: Чтобы избежать задержки конвейера из-за инструкции условного перехода, под командой условного перехода помещается подходящая инструкция, так что инструкция будет выполняться независимо от того, принято ли переход или нет, и не повлияет на поведение программы.

Другое объяснение:
Инструкция, следующая за инструкцией ветвления в конвейере, всегда выполняется, потому что обычно целевой адрес ветвления доступен по идентификатору, который, в свою очередь, вводит останов в конвейере. Этот интервал задержки называется интервалом задержки перехода. Поскольку мы не знаем заранее, произойдет ли ветвление или нет, нам нужно заполнить интервал задержки соответствующей инструкцией, например, инструкцией без зависимости или инструкцией NOP.
Тест на этот вопрос

Рекомендуемые посты:

ВОРОТА | GATE CS 2008 | Вопрос 76

0.00 (0%) 0 votes