игра брюс 2048
Главная / Программирование / Разработка компиляторов / Тест 1

Разработка компиляторов - тест 1

Упражнение 1:
Номер 1
Когда появилась платформа .NET?

Ответ:

 (1) 1999 году 

 (2) 2000 году 

 (3) 2001 году 

 (4) 2002 году 


Номер 2
В .NET исходные тексты программ компилируются в специальное промежуточное представление, которое называется:

Ответ:

 (1) Microsoft Intermediate Language 

 (2) IL 

 (3) SIL 

 (4) MSIL 


Номер 3
Во время трансляции в .NET промежуточное представление не интерпретируется, а вместо этого используется механизм::

Ответ:

 (1) компиляции времени исполнения, который генерирует машинный код 

 (2) компиляции времени исполнения, который не генерирует машинный код 

 (3) трансляции времени исполнения, который генерирует машинный код 

 (4) трансляции времени исполнения, который не генерирует машинный код 


Упражнение 2:
Номер 1
В .NET все сервисы, предоставляемые программисту платформой, оформлены в виде:

Ответ:

 (1) единой иерархии объектов 

 (2) единой иерархии типов 

 (3) единой иерархии классов 

 (4) единой иерархии блоков 


Номер 2
С помощью какого механизма в .NET происходит обработка ошибок?

Ответ:

 (1) исключительных ситуаций 

 (2) исключительных событий 

 (3) внутренней верификации 

 (4) встроенной верификации 


Номер 3
При создании .NET основной упор был сделан на следующие языки:

Ответ:

 (1) C++-подобные 

 (2) Java-подобные 

 (3) Pascal-подобные 

 (4) Lisp-подобные 

 (5) Perl-подобные 


Упражнение 3:
Номер 1
Существуют следующие версии MSIL:

Ответ:

 (1) для мобильных 16-разрядных устройств 

 (2) для мобильных 8-разрядных устройств 

 (3) стандартная 32-разрядная версия 

 (4) специальная версия для работы с 64-разрядными устройствами 


Номер 2
Извлечение из MSIL исходных текстов путем дизассемблированя вряд ли имеет смысл, так как имена локальных переменных, констант и параметров сохраняются только:

Ответ:

 (1) в программной версии 

 (2) в тестовой версии 

 (3) в буферной версии 

 (4) в отладочной версии 


Номер 3
Для изучения сгенерированного MSIL-кода можно использовать утилиту:

Ответ:

 (1) ILDasm 

 (2) MSILDasm 

 (3) MILDasm 

 (4) MSILAsm 


Упражнение 4:
Номер 1
В единой объектно-ориентированная модель классов .NET которой все классы унаследованы от:

Ответ:

 (1) базового класса System 

 (2) базового класса Object 

 (3) базового класса Type 

 (4) базового класса Block 


Номер 2
Основные сервисы .NET сосредоточены в пространстве имен:

Ответ:

 (1) Object 

 (2) Class 

 (3) Services 

 (4) System 


Номер 3
В .NET единая модель объектов распространяется сразу на:

Ответ:

 (1) все языки программирования 

 (2) все платформы 

 (3) все операционные системы 

 (4) все средства разрботки приложений 


Упражнение 5:
Номер 1
В первом приближении сборка - это:

Ответ:

 (1) аналог EXE 

 (2) аналог DLL 

 (3) аналог COM 

 (4) аналог BAT 


Номер 2
Причиной появления понятия сборки можно считать:

Ответ:

 (1) комплексность установки Windows-приложений 

 (2) многоэтапность установки Windows-приложений 

 (3) простоту установки Windows-приложений 

 (4) трудности установки Windows-приложений 


Номер 3
Для того чтобы сборки действительно были независимыми от системы и от других сборок, необходимо, чтобы они сопровождались явным описанием:

Ответ:

 (1) предоставляемых ими сервисов 

 (2) зависимостей от внешнего мира 

 (3) системных зависимостей 


Упражнение 6:
Номер 1
Манифест: описание сборки позволяет:

Ответ:

 (1) скрыть от потребителя детали реализации 

 (2) открыть потребителю детали реализации 

 (3) ничего не скрывать от потребителя 

 (4) все скрыть от потребителя 


Номер 2
Каждая сборка имеет уникальное имя, которое состоит из следующих частей:

Ответ:

 (1) префикса 

 (2) простого текстового имени 

 (3) номера версии 

 (4) информации о локализации 


Номер 3
Общие сборки сопровождаются номером версии в следующем формате:

Ответ:

 (1) incompatible.compatible.hotfix 

 (2) compatible.hotfix 

 (3) incompatible.hotfix 

 (4) incompatible.compatible.path 


Упражнение 7:
Номер 1
Типами проверок безопасности в .NET являются:

Ответ:

 (1) безопасность типов 

 (2) подлинность кода 

 (3) разрешения на доступ к ресурсам 

 (4) декларативная безопасность 

 (5) общая безопасность 

 (6) императивная безопасность 


Номер 3
Поддерживает ли .NET удаленный вызов объектов?

Ответ:

 (1) Да 

 (2) Нет 

 (3) Да, только в Linux 


Номер 2
Моделями обеспечения безопасности в .NET являются:

Ответ:

 (1) модель политик доступа 

 (2) модель ролей 

 (3) модель прав 

 (4) модель ограничений 

 (5) модель полномочий 


Упражнение 8:
Номер 1
В Common Type System все типы делятся на следующие категории:

Ответ:

 (1) примитивные типы, типы-значения и ссылочные типы 

 (2) объектные и интерфейсные типы 

 (3) специальные типы 

 (4) блочные и системные типы 


Номер 2
Какие типы данных являются основными в системе типов данных .NET:

Ответ:

 (1) типы-значения 

 (2) ссылочные типы 

 (3) объектные типы 

 (4) интерфейсные типы 


Номер 3
В С# возможно определение:string s = "Hello C#";под которым подразумевается следующее присваивание:

Ответ:

 (1) System.String s = .String(); s = "Hello C#";  

 (2) System.String s = new System.String(); s = "Hello C#";  

 (3) .String s = new System.String(); s = "Hello C#";  

 (4) System.String = System.String(); s = "Hello C#";  


Упражнение 9:
Номер 1
Типы данных, напрямую поддержанные компилятором и допускающие определенные сокращения записи - это:

Ответ:

 (1) примитивные типы 

 (2) ссылочные типы 

 (3) блочные типы 

 (4) системные типы 


Номер 2
Полный набор примитивных типов .NET поддерживает:

Ответ:

 (1)

 (2) C++ 

 (3) C# 

 (4) Java 


Номер 3
В C# объявить value type можно так:

Ответ:

 (1) RectVal { public int x, y, cx, cy; } 

 (2) struct RectVal { x, y, cx, cy; } 

 (3) struct RectVal { public int x, y, cx, cy; } 

 (4) struct { x, y, cx, cy; } 


Упражнение 10:
Номер 1
Для типа-значения верно:

Ответ:

 (1) содержит само значение, а не ссылку на него  

 (2) тип-значение не может наследовать от другого типа  

 (3) тип-значение не может быть наследуемым 

 (4) редко передаются в качестве параметров 


Номер 2
При создании ссылочные типы инициализируются значением:

Ответ:

 (1) true 

 (2) false 

 (3) 1 

 (4) null 


Номер 3
В C# ссылочные типы можно создать так:

Ответ:

 (1) class RectRef {public int x, y, cx, cy; } 

 (2) RectRef {public int x, y, cx, cy; } 

 (3) class {public int x, y, cx, cy; } 

 (4) class RectRef { x, y, cx, cy; } 

 (5) class { x, y, cx, cy; } 

 (6) class.RectRef {public.int x, y, cx, cy; } 


Упражнение 11:
Номер 1
В следующем примере:ArrayList a = new ArrayList();
for (int i=0; i < 10; i++) {
  Point p;
  p.x = p.y = i;
  a.Add(p);
}
мы добавляем тип-значение:

Ответ:

 (1) в коллекцию 

 (2) в секцию 

 (3) в блок 

 (4) в массив 


Номер 2
Процесс преобразования типа-значения в ссылочный тип называется:

Ответ:

 (1) распаковкой 

 (2) упаковкой 

 (3) шифрованием 

 (4) дешифованием 


Номер 3
В ходе распаковки проверяется, что исходная ссылочная переменная:

Ответ:

 (1) не равняется null 

 (2) равняется null 

 (3) не равняется 1 

 (4) не равняется 1 

 (5) не равняется true 

 (6) не равняется false 


Упражнение 12:
Номер 1
В данном примере:public static void Main() {
  Int32 v = 5;
  Object o = v;
  v = 123;


  Console.WriteLine (v + ", " + (Int32) o);
}операция упаковки производится:

Ответ:

 (1) 0 раз 

 (2) 1 раз 

 (3) 2 раза 

 (4) 3 раза 


Номер 2
Языки программирования C# или Visual Basic.NET, поддерживают операции упаковки и распаковки:

Ответ:

 (1) прозрачно для программиста 

 (2) не прозрачно для программиста 

 (3) открыто для программиста 


Номер 3
При недостаточном понимании происходящих "за кадром" процессов операции упаковки и распаковки, прозрачных для программиста, может потерять:

Ответ:

 (1) структуры 

 (2) эффективности 

 (3) модульности 

 (4) переносимости 




Главная / Программирование / Разработка компиляторов / Тест 1