Тест по Computer Science — вопросы

Материал из DISCOPAL
Перейти к: навигация, поиск
12345678910
Тест по Computer Science, подготовил Участник:Akazikov

Вариант 4142001764.


Ваше имя*:


Вопрос 1

Выходные данные процедуры mystery зависят от используемого метода передачи параметров

  procedure mystery
    a : integer;
    b : integer;
    procedure enigma(x,y)
    begin
      y = y + b;
      x = b + x;
      b = x + b;
      a = y;
    end enigma;
  begin
    a = 2; b = 7;
    enigma(a,b);
    write(a); write(b);
  end mystery;

Предположим, что все параметры передаются по значению

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

  1.  a = 9 b = 14
  2.  a = 2 b = 9
  3.  a = 2 b = 7
  4.  a = 14 b = 16
  5.  a = 30 b = 30

Вопрос 2

Одним из подходов к обработке данных нечеткой логики может быть разработка компьютера с использованием троичной логики (base-3), чтобы данные могли храниться в виде «true», «false» и «unknown»

Если каждый элемент троичной логики называется flit, то сколько таких элементов требуется для представления как минимум 256 различных значений?

  1.  6
  2.  8
  3.  4
  4.  7
  5.  5

Вопрос 3

Какой из следующих протоколов, относящихся к набору интернет-протоколов (IP), наилучшим образом описывает назначение протокола разрешения адресов (Address Resolution Protocol)?

  1.  Для преобразования веб-адресов в имена хостов
  2.  Для определения аппаратного адреса данного IP-адреса
  3.  Чтобы определить аппаратный адрес заданного имени хоста
  4.  Чтобы определить подходящий маршрут для дейтаграммы
  5.  Чтобы определить IP-адрес заданного имени хоста

Вопрос 4

Массив A содержит 256 элементов по 4 байта каждый. Его первый элемент хранится по физическому адресу 4096

Массив B содержит 512 элементов по 4 байта каждый. Его первый элемент хранится по физическому адресу 8192

Предположим, что только массивы A и B могут быть кэшированы в изначально пустой, физически адресуемой, физически маркированной, кэш-памяти с прямым отображением, объемом 2 Кбайт и размером блока 8 байт

Затем выполняется следующий цикл

  for (i = 0; i < 256; i++)
    A[i] = A[i] + B[2*i];

Сколько байт будет записано в память во время выполнения цикла, если в кэше действует политика сквозной записи?

  1.  1024
  2.  0
  3.  2048
  4.  4096
  5.  256

Вопрос 5

Два процессора, M-5 и M-7, реализуют один и тот же набор инструкций

Процессор M5 использует 5-ступенчатый конвейер и тактовый цикл 10 наносекунд

Процессор M-7 использует 7-ступенчатый конвейер и тактовый цикл 7,5 наносекунд

Что из приведенного ниже верно?

  • М-7 имеет лучшую максимальную пропускную способность, чем М-5
  • Задержка выполнения одной инструкции в M-7 меньше, чем в M-5
  • Программы, выполняемые на M-7, всегда будут выполняться быстрее, чем программы, выполняемые на M-5
  1.  Только 1
  2.  2 и 3
  3.  1 и 3
  4.  Только 2
  5.  1, 2, 3

Вопрос 6

На конвейерном RISC-компьютере, где все арифметические команды имеют одинаковый CPI (cycles per instruction), какие из следующих действий улучшат время выполнения типичной программы?

  • Увеличение частоты тактового цикла
  • Запрещение любой переадресации в конвейере
  • Удвоение размеров кэша интсрукций и кэша данных без изменения времени такта
  1.  1 и 2
  2.  Только 3
  3.  Только 2
  4.  Только 1
  5.  1 и 3

Вопрос 7

Рассмотрите следующие возможные структуры данных для набора из n различных целых чисел

  • Минимальная куча
  • Массив длиной n, отсортированный в порядке возрастания
  • Сбалансированное дерево бинарного поиска

Для какой из этих структур данных требуется количество шагов, чтобы найти и удалить 7-й по величине элемент O(logn) в наихудшем случае?

  1.  2 и 3
  2.  Только 1
  3.  1 и 2
  4.  1 и 3
  5.  Только 2

Вопрос 8

Какой из следующих алгоритмов имеет время выполнения O(n²) в наихудшем случае, но O(nlog(n)) в среднем?

  1.  Пузырьковая сортировка
  2.  Быстрая сортировка
  3.  Сортировка слиянием
  4.  Пирамидальная сортировка (сортировка кучей)
  5.  Турнирная (Tournament) сортировка

Вопрос 9

Инвариантом для приведенного ниже цикла является и

  x := b; k := n; z := 1;
  while (k != 0)
  {
    if odd(k) then z := z*x;
    x := x*x;
    k := [k/2];
  }

Когда цикл завершается, что из перечисленного ниже должно быть истинным?

  1.  
  2.  
  3.  
  4.  
  5.  

Вопрос 10

Что из перечисленного НЕ является разумным обоснованием выбора режима активного ожидания для асинхронного события?

  1.  Задача должна быть выполнена в сжатые сроки в режиме реального времени
  2.  Цикл ожидания занятости проще в программировании, чем обработчик прерываний
  3.  Ожидается, что ожидание будет недолгим
  4.  Процессору не нужно выполнять никакой другой задачи
  5.  Программа выполняется в системе с разделением времени