Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Критерии оценивания.

Читайте также:
  1. I. Критерии для различия
  2. V. Критерии оценки работ и награждение
  3. Алгебраические критерии устойчивости
  4. В.7. Критерии качества удаления воды и осушки трубопроводов МГ, технологических трубопроводов и оборудования КС.
  5. ВЯЧЕСЛАВ СТЕПИНКЛАССИКА, НЕКЛАССИКА, ПОСТНЕКЛАССИКА: КРИТЕРИИ РАЗЛИЧЕНИЯ 1 страница
  6. Гармонизированные критерии европейских стран
  7. Диагностические критерии.

Министерство образования и науки Украины

Симферопольский автотранспортный техникум

 

 

«Утверждаю»

Заместитель директора по учебной работе

Гребнев Н.И.

«___» _______ 2009 г.

 

 

Вопросы

 

для программированного контроля знаний

по предмету «Системное программирование»

по специальности: 5.05010201

 

«Обслуживание компьютерных систем и сетей»

 

 

Вопросы составлены преподавателями Безменовой Е.Ю. Родько К.О. Рассмотрены на заседании цикловой комиссии
  Протокол № от «___» __________ 2009 г.
  Председатель комиссии
  Безменова Е.Ю

 

 

Симферополь, 2009

 


Пояснительная записка

Назначение

Блок вопросов теста по курсу «Системное программирование» выполнен в соответствии с рабочей и учебной программой и охватывает весь теоретический материал (в том числе и материал, задаваемый на самостоятельное изучение) и некоторые вопросы из практической части.

 

В целом тест предназначен как один из элементов для оценивания знаний на экзамене.

 

Отдельные блоки вопросов могут использоваться в следующих формах контроля знаний:

- модульные аттестации;

- допуск к дипломному проектированию.

Объем блоков вопросов.

Тест разбит на две части: первая – содержит 125 вопросов по языку программирования С++, вторая – 125 вопросов по языку программирования Ассемблер.

Учитывая достаточную сложность вопросов, время отведенное для ответа на один вопрос составляет около одной минуты

Методическая реализация.

Технически контроль осуществляется на ЭВМ с использование опросных систем-оболочек. Рекомендуемый метод, является объективным и соответствующим современным требованиям.

Структура вопроса.

Вопрос содержит 3 - 4 альтернативных варианта ответов, из которых только один является правильным.

Критерии оценивания.

При прохождении тестов определена следующая шкала оценивания:

на оценку «3» - 60% - 74%

на оценку «4» - 75% - 89%

на оценку «5» - 90% - 100%


Тестовые вопросы по блоку С++

?Подключение библиотеки определяется строкой:

+#include <iostream.h>

-include <iostream.h>

-#include 'iostream.h'

 

?Для использования в программе операторов ввода-вывода следует подключить библиотеку:

+iostream.h

-conio.h

-stdlib.h

 

?Для вывода текстовой строки с помощью оператора cout, используются:

+"..."

-'...'

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

 

?Для консольного ввода данных используют формат записи:

+cin>>переменная;

-cin<<переменная;

-sin>>переменная;

 

?Если в переменную должна быть введена строка символов, ввод продолжается до:

+первого символа пробела или ввода Enter

-первого символа пробела

-ввода Enter

 

?Многострочный комментарий начинается и заканчивается символами:

+/*...*/

-//...//

-{...}

 

?Однострочный комментарий следует за:

+//

-/*

-#

 

?Объявление переменной имеет вид:

+тип_данных имя_переменной

-имя_переменной тип_данных

-тип_данных:имя_переменной

 

?Переменная типа void:

+не имеет значения

-имеет значение

-всегда равна 0

 

?Строковые константы заключаются в:

+двойные кавычки

-апострофы

-константы пишутся без кавычек

 

?Символьные константы заключаются в:

-двойные кавычки

+апострофы

-константы пишутся без кавычек

 

?Префиксный оператор применяется к операнду:

+перед использованием полученного результата

-после использования полученного результата

-такого оператора не существует

 

?Постфиксный оператор применяется к операнду:

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

+после использования полученного результата

-такого оператора не существует

 

?Операторы инкремента и декремента являются:

+унарными

-бинарными

-универсальными

 

?Логическое "И" имеет вид:

+&&

-&

-and

 

?Логическое "ИЛИ" имеет вид:

+||

-|

-or

 

?Операция "не равно" в С++ имеет вид:

+!=

-<>

-=!

 

?В результате выполнения max=(a>b)?a:b; произойдет:

-ошибка

+если a>b, то max=a, иначе max=b

-если a>b, то max=a, иначе программа перейдет к выполнению следующего оператора

 

?Оператор switch является:

+оператором ветвления

-условным оператором

-такого оператора не существует

 

?Оператор цикла с предусловием имеет вид:

+while(выражение) оператор

-while(выражение) do оператор

-do оператор while(выражение)

 

?Оператор цикла с постусловием имеет вид:

+do оператор while(выражение)

-while(выражение) do оператор

-repeat оператор until выражение

 

?Оператор break необходим для того, чтобы:

+закончить цикл в любом операторе тела цикла

-начать новую итерацию цикла

-в С++ такого оператора не существует

 

?Оператор continue необходим для того, чтобы:

-закончить цикл в любом операторе тела цикла

+начать новую итерацию цикла

-в С++ такого оператора не существует

 

?Прототип функции объявляется:

+возвращаемый_тип имя_функции(список_параметров);

-имя_функции(список_параметров) возвращаемый_тип;

-возвращаемый_тип имя_функции(список_параметров) {тело_функции};

 

?Оперделение функции состоит из:

+ее заголовка и тела, заключенного в фигурные скобки

-ее заголовка и типа возвращаемого значения

-тела, заключенного в фигурные скобки

 

?Если функция возвращает значение, отличное от типа void, в теле функции обязательно должен присутствовать оператор:

+return

-return 0

-return имя_функции

 

?Вызов функции в программе представляет собой указание:

+ее имени, за которым следует список аргументов

-ее имени и типа возвращаемого значения

-типа возвращаемого значения, имени и списка аргументов

 

?Рекурсией называется явление, если:

+функция может вызывать сама себя

-функция может вызывать другую функцию

-функция может одновременно вызывать несколько функций

 

?Переменные, объявленные внутри функции, называются:

+локальными

-глобальными

-видимыми

 

?Под областью действия переменной понимают область программы, в которой:

+переменная доступна для использования

-к переменой можно получить доступ

-описана данная переменная

 

?Глобальные переменные доступны в любой из функций программы. Имена локальных и глобальных переменных:

+не должны совпадать

-могут совпадать

-могут менятся в ходе выполнения программы

 

?Глобальные переменные определяются:

+вне тела какой-либо из функций

-внутри главной функции

-как аргументы главной функции программы

 

?Операция:: называется:

+операцией разрешения области видимости

-операцией обращения к локальной переменной

-такой операции не существует в С++

 

?Символом перехода на новую строку является:

+'\n'

-'/n'

-"\n"

 

?Прототипы стандартных математических функций определены в заголовочном файле:

+math.h

-stdlib.h

-mathlib.h

 

?Функция возведения числа в степень имеет вид:

+pow(a,b), где a - число, b - показатель степени

-a^b, где a - число, b - показатель степени

-в С++ не существует стандартной функции возведения числа в степень

 

?Указатель представляет собой переменную, значение которой является:

+адресом ячейки памяти

-значением ячейки памяти

-указатель не является переменной

 

?Объявление указателя имеет вид:

+тип_объекта* идентификатор;

-идентификатор* тип_объекта;

-тип_объекта->идентификатор;

 

?К указателям могут применятся:

+арифметические операции

-операторы ввода-вывода

-любые операторы

 

?Параметры в функцию могут передаваться:

+по значению или по ссылке

-по значению или по указателю

-по указателю или по ссылке

 

?При передаче аргуменов по значению:

+функция работает с копией и не влияет на оригинал

-функция работает с оригиналом

-функция работает с копией и влияет на оригинал

 

?При передаче аргуменов по ссылке:

-функция работает с копией и не влияет на оригинал

+функция работает с оригиналом

-функция работает с копией и влияет на оригинал

 

?В С++ элементы массива нумеруются:

+с 0

-с 1

-в зависимости от указанного диапазона

 

?Инизиализацию массива можно произвести при его объявлении. После объявления необходимо:

+за знаком равенства перечислить значения в фигурных скобках

-за знаком равенства перечислить значения в круглых скобках

-за знаком равенства перечислить значения в квадратных скобках

 

?При объявлении одномерного массива с одновременной его инициализацией разрешается:

+опускать значение размера

-опускать тип элементов массива

-опускать скобки при перечислении элементов

 

?Многомерный массив размерности N:

+можно представить как одномерный масив измассивов размерности N-1

-можно представить как одномерный масив измассивов размерности N

-нельзя представить в виде одномерного массива

 

?Выберите идентификатор строкового типа данных в С++:

+в С++ не существует специального строкового типа

-string

-char

 

?Строки в С++ представляются как:

+массивы элементов типа char

-константа, взятая в двойные кавычки

-константа, взятая в апострофы

 

?Чтобы считать строку с клавиатуры следует использовать оператор:

+cin.getline

-cin

-getline

 

?Какие параметры принимает функция getline?

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

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

-аргумент, указывающий на строку, в которую осуществляется ввод

 

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

+getch()

-getchar()

-return 0

 

?Какая из нижеперечисленных функций копирует строку 2 в строку 1?

+strcpy

-strcat

-strcmp

 

?Какая из нижеперечисленных функций присоединяет строку 2 в конец строки 1?

-strcpy

+strcat

-strcmp

 

?Какая из нижеперечисленных функций сравнивает строку 1 со строкой 2, различая прописные и строчные буквы?

-strcpy

-strcat

+strcmp

 

?Какая из нижеперечисленных функций сравнивает строку 1 со строкой 2, не различая прописные и строчные буквы?

+stricmp

-strncmp

-strcmp

 

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

+strlen

-strlength

-strlng

 

?Какая из нижеперечисленных функций преобразует все символы строки в строчные буквы?

+strlwr

-strupr

-strlvr

 

?Какая из нижеперечисленных функций преобразует все буквы строки в прописные буквы?

-strlwr

+strupr

-strypr

 

?Какая из нижеперечисленных функций присоединяет заданное число символов строки 2 в конец строки 1?

+strncat

-strcat

-stricat

 

?Какая из нижеперечисленных функций копирует заданное число символов строки 2 в строку 1?

-strcpy

+strncpy

-stricpy

 

?Какая из нижеперечисленных функций инвертирует строку?

+strrev

-strset

-strinv

 

?Какая из нижеперечисленных функций отыскивает место первого вхождения строки 2 в строку 1?

+strstr

-strtok

-strpos

 

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

+isalnum(c)

-isalpha(c)

-isdigit(c)

 

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

-isalnum(c)

+isalpha(c)

-isdigit(c)

 

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

+atof

-atoi

-ator

 

?Функции ввода-вывода для работы с файлами объявлены в заголовочном файле:

+stdlib.h

-iostream.h

-string.h

 

?Признаком конца строки в текстовом файле является:

+пара символов CR и LF

-символ CR

-символ LF

 

?Функция gets() выполняет:

+считывание строки символов из стандартного входного потока и помещает их в переменную

-считывание строки с клавиатуры

-считывание значения строковой переменной

 

?Функция puts():

+выводит строку в стандартный выводной поток и добавляет символ перевода на новую строку

-выводит строку в стандартный выводной поток

-выводит строку на экран

 

?Функция scanf() осуществляет:

+форматированный ввод информации из стандартного потока ввода

-форматированный вывод информации из стандартного потока вывода

-ввод информации из стандартного потока ввода

 

?К символам-заполнителям относятся:

+пробел, символ табуляции и перевод строки

-все символы, кроме знака процента

-пробел, символ табуляции, перевод строки и символ процента

 

?Функция printf() осуществляет:

-форматированный ввод информации из стандартного потока ввода

-форматированный вывод информации в стандартный потока вывода

-вывод информации в стандартный поток ввода

 

?Функция printf() принимает последовательность аргументов, применяя к каждому аргументу:

+спецификатор формата

-символ преобразования типа

-символ-заполнитель

 

?Спецификатор ширины поля устанавливает:

+минимальную ширину поля для выводимого значения

-максимальную ширину поля для выводимого значения

-ширину поля для выводимого значения

 

?Какой спецификатор функции printf() устанавливает максимальное число выводимых символов или минимальное число выводимых цифр для целых чискл?

+спецификатор точности

-спецификатор преобразования типа

-спецификатор ширины поля

 

?Для того, чтобы выполнять операции ввода-вывода в файловый поток, его нужно открыть с помощью функции:

+fopen()

-open()

-openf()

 

?Механизм, который объединяет данные и код, манипулирующий этими данными, а также защищает то и другое от постороннего вмешательства - это:

+инкапсуляция

-полиморфизм

-наследование

 

?Процесс, посредством которого один объект может приобретать свойства другого - это:

-инкапсуляция

-полиморфизм

+наследование

 

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

-инкапсуляция

+полиморфизм

-наследование

 

?Если объект наследует атрибуты от нескольких родителей, то говорят о:

+множественном наследовании

-простом наследовании

-полиморфизме

 

?Перегрузка операторов - это:

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

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

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

 

?Виртуальная функция - это:

+функция класса, которая может быть переопределена в классах-наследниках так, что конкретная реализация метода для вызова будет определяться во время исполнения

-функция класса, которая не может быть переопределена в классах-наследниках

-функция класса, которая может быть переопределена в классах-наследниках так, что конкретная реализация метода для вызова будет определяться во время ее вызова

 

?Для виртуальных функций выполняется:

+позднее связывание

-раннее связывание

-динамическое связывание

 

?Синтаксис описания класса имеет вид:

+class <имя_класса> {//закрытые свойства и методы класса public: //открытые свойства и методы класса} <список_объектов>;

-class <имя_класса> {//открытые свойства и методы класса public: //закрытые свойства и методы класса} <список_объектов>;

-class <имя_класса> {//закрытые свойства и методы класса private: //открытые свойства и методы класса} <список_объектов>;

 

?Переменные, объявленные внутри класса, называются:

+данными-членами

-функциями-членами

-закрытыми элементами класса

 

?По умолчанию, все функции и переменные, объявленные в классе, становятся:

+закрытыми для этого класса

-открытыми для этого класса

-защищенными для этого класса

 

?Функции и переменные, доступные для других членов класса, объявляются после слова:

+public

-private

-protected

 

?Синтаксис задания функции-члена имеет вид:

+<Тип> <имя_класса>::<имя_функции>(<список_параметров>) {тело функции};

-<Тип> <имя_класса>::<имя_функции>(<список_параметров>);

-<Тип> <имя_класса>:<имя_функции>(<список_параметров>) {тело функции};

 

?К открытым членам класса можно обращатся, используя операцию:

+точка

-запятая

-двоеточие

 

?Данные-члены и функции-члены доступны только для функций-членов этого класса, если они описаны после слова:

-public

+private

-protected

 

?Данные-члены и функции-члены доступны для функций-членов этого класса и других функций программы, в которой имеется представитель класса, если они описаны после слова:

+public

-private

-protected

 

?Данные-члены и функции-члены доступны для функций-членов данного класса и классов, производных от него, если они описаны после слова:

-public

-private

+protected

 

?Выберите правильное утверждение:

+конструктор имееет то же имя, что и класс, членом которого он является, и не имеет возвращаемого значения

-конструктор имееет то же имя, что и класс, членом которого он является, и имеет возвращаемое значение

-конструктор имееет имя, отличное от имени класса, членом которого он является, и не имеет возвращаемого значения

 

?Имени какой функции-члена предшествует символ ~?

+деструктор

-конструктор

-закрытая функция-член

 

?Выберите правильное утверждение:

+для констуктора не указывается тип возвращаемого значения

-конструктор наследуется

-конструктор может возвращать значение

 

?Если в классе не определен конструктор, то:

+компилятор генерирует конструктор по умолчанию, не имеющий параметров

-компилятор генерирует конструктор по умолчанию, имеющий параметры

-компилятор выдаст ошибку периода выполнения

 

?Выберите правильное утверждение:

+деструктор не может иметь параметров

-класс может иметь более одного деструктора

-деструктор наследуется

 

?Конструктор по умолчанию:

+не имеет параметров и вызывается при создании объекта

-имеет параметры

-создается пользователем

 

?С помощью дружественных функций:

+можно получить доступ к закрытым членам класса

-можно получить доступ к открытым членам класса

-можно получить доступ к любым членам класса

 

?Дружественная функция:

-наследуется

+может быть дружественной сразу нескольким классам

-может быть дружественной только одному классу

 

?С++ позволяет классу наследовать:

+данные-члены и функции-члены

-данные-члены, функции-члены и конструктор

-данные-члены

 

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

+открытые и защищенные

-открытые и закрытые

-закрытые и защищенные

 

?Выберите не наследуемые члены класса:

+конструкторы, деструкторы, друзья класса

-конструкторы, деструкторы, друзья класса, защищеные данные-члены

-конструкторы, деструкторы, друзья класса, защищеные данные-члены и функции-члены

 

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

+косвенным

-производным

-родительским

 

?О множественном наследовании говорят, если:

+у производного класса имеется несколько базовых классов

-производный класс наследовался несколько раз

-у базового класса имеется несколько потомков

 

?Выберите правильное утверждение:

+любые две перегруженные функции должны иметь различные списки параметров

-любые две перегруженные функции должны иметь одинаковые списки параметров

-любые две перегруженные функции могут иметь различные списки параметров

 

?Функция getch() содержится в библиотеке:

+conio.h

-stdlib.h

-iostream.h

 

?Что нужно добавить, чтобы в результате выполнения программы #include <iostream.h> int main() {cout<<"Hello, world!\n";} строка Hello, world! оставалась на экране?

+#include <conio.h>, getch()

-getch()

-return 0

 

?Инструкция return обеспечивает:

+механизм завершения работы функции

-завершение работы программы

-вывод результатов

 

?Операция % дает:

+остаток от деления

-целую часть от деления

-такой операции в С++ не существует

 

?Какое значение сохранится в переменную a в результате выполнения следующей операции int a = 21 / 6;?

+3

-4

-3,5

 

?Выберите правильное утверждение:

+имя переменной может состоять из латинских букв, цифр и символа подчекивания; прописные и строчные буквы в именах различаются

-имя переменной может состоять из латинских букв, цифр и символа подчекивания; прописные и строчные буквы в именах не различаются

-имя переменной может состоять только из латинских букв; прописные и строчные буквы в именах различаются

 

?Выберите неправильный вариант:

+3.14 % 3

-21 % 6

-21 % -5

 

?Результатом выражения true && false || true будет:

+true

-false

-ошибка

 

?Дано: a=2; b=5; c=3; Тогда значением выражения a!=b && a!=c && b!=c будет:

+1

-0

-ошибка, переменные могут принимать только значения 0 или 1

 

?Что произойдет в результате выполнения следующих операторов: int a, b; a=b=0;?

+присваивание 0 обеим переменным

-ошибка

-сравнение значений переменных с 0

 

?Какое значение будет возвращать функция int proc(int a, int b) { return (a < b)? a: b; }?

+минимальное между a и b

-максимальное между a и b

-в операторе return нельзя указывать выражение

 

?Чему будет равно значение переменной int a = 6 + 3 * 4 / 2 + 2;?

+14

-20

-36

 

?Какое значение возвращает функция int gcd(int vl, int v2){ while (v2) { int temp = v2; v2 = vl % v2; vl = temp; } return vl;}

+наибольший общий делитель

-остаток от деления двух целых чисел

-целую часть от деления двух целых чисел

 

?Какого типа не может быть возвращаемое значение функции?

+массив

-перечисление

-класс

 

?Выберите неправильный вариант:

+int manip(int vl, v2)

-int manip(int vl, int v2)

-int manip(void)

 

 

Тестовые вопросы по блоку Ассемблер

?Какая из ниже перечисленных групп регистров относится к 16-разрядным?

-al, bl, cl, dl

+ax, bx, cx, dx

-eax, ebx, ecx, edx

 

?Какие из ниже перечисленных команд относятся к логическим?

-and, or, add, xor

-not, or, neg, and, xor

+not, and, or, xor

 

?Что произойдёт в результате выполнения следующей команды mov al,345?

-al=345

+ошибка

-al=al+345

 

?Что произойдёт в результате выполнения следующей команды mov [a1],[a2]?

+ошибка

-а1=а2

-значение а1 и а2 не изменятся

 

?Выберите правильный вариант:

+mov [a],5

-mov a1,283

-mov [a],[b]

 

?В результате выполнения следующей команды mov al,7; add al,250 в регисте al сохранится значение:

-257

+1

-ошибка

 

?В каком из следующих операторов можно использовать 3 операнда?

-mul

+imul

-idiv

 

?Какая из ниже перечисленных команд копирует значение из источника в приёмник?

-copy

+mov

-mul

 

?При помощи какой команды можно перенести значение из одной переменной в другую?

-copy [a1],[a2]

-mov [a1],[a2]

+mov ax,[a1]; mov [a2],ax

 

?Чтобы поместить значение регистра bl в регистр ax следует выполнить команду:

-mov ax,bl

-mov bl,ax

+mov ax,bx; mov ah,0

 

?В результате выполнения следующих команд mov ax,8; mov cx,6; mov dx,cx; add dx,cx;

-dx=8

+dx=14

-ошибка

 

?Команда add o1,o2:

+Складывает o1 и o2 и результат заносится в o1

-складывает o1 и o2 и результат заносит в o2

-складывает o1 и o2 и результат сохраняет в ax

 

?Выберите пару команд, дающих одинаковый результат:

-inc ax; sub ax,1

-dec ax; add ax,1

+inc ax; add ax,1

 

?Какая из ниже перечисленных команд изменяет значение cf:

-add

-inc

+adc

 

?Дано двоичное число 00100110. В результате применения к этому числу команды neg будет:

-11011001

-10100110

+11011010

 

?Какая из команд меняет знак:

-not

+neg

-такой команды не существует

 

?Команда mul o1:

-умножает o1 на o1 и результат сохраняет в ax

+умножает o1 на al и результат сохраняет в ax

-выдаст ошибку

 

?Какие из ниже перечисленных команд возводят 25 в квадрат?

+mov ax,25; mul ax

-mov ax,25; mul 25

-mul 25,25

 

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

+imul

-mul

-такой команды не существует

 

?В результате выполнения следующих команд imul eax, ecx, ebx произойдёт

-eax=ecx*ebx

-eax=eax*ecx*ebx

+Ошибка

 

?Выберите фрагмент программы, которая разделит 19 на 3, частное сохранит в bl, а остаток в bh

+mov ax,19; mov cl,3; div cl; mov bx,ax

-div 19,3; mov bx,ax;

-mov ax,19; div 3; mov bx,ax

 

?Какая команда сохранит частное в al, остаток – в ah?

+div

-mul

-sub

 

?Найти результат: mov al,1; mov bl,al; dec bl; and al,bl:

+al=0

-al=1

-al=al*bl

 

?Найти результат: mov al,0; inc al; mov bl,al; or al,bl:

-al=al+bl

-al=0

+al=1

 

?Логическое исключающее «или» это:

-or

+xor

-не существует

 

?В языке ассемблера комментарии определяются:

-:

-//

+;

 

?Регистры обеспечивают:

+более высокую скорость доступа, чем обращение к внешней памяти

-скорость чтения данных с внешнего носителя

-запись данных

 

?Выберите группу регистров общего назначения:

+ax, bx, cx, dx

-cs, ds, ss, es

-bp, sp, si, di

 

?Выберите группу сегментных регистров

-ax, bx, cx, dx

+cs, ds, ss, es

-bp, sp, si, di

 

?Выберите регистры индексов

-ax, bx, cx, dx

-cs, ds, ss, es

+bp, sp, si, di

 

?Сколько существует типов флагов?

-управляющие флаги и индексные флаги

-флаги состояния и флаги общего назначения

+управляющие флаги и флаги состояния

 

?Директива – это:

+утверждение, которое выполняется ассемблером во время трансляции исходной программы и получения машинных кодов

- утверждение, которое выполняется ассемблером во время декодировании исходной программы и получения машинных кодов

- утверждение, которое выполняется ассемблером во время загрузки исходной программы и получения машинных кодов

 

?Какая из директив определяет режим памяти?

-.data

+.model

-.stack

 

?Какая из директив выделяет память для одного или нескольких 8-разрядных значений?

+db

-dd

-dw

 

?Какая команда обменивает содержимое двух регистров или содержимое регистра и памяти?

-mov

+xchg

-xch

 

?Выберите команды, которые обменивают содержимое двух переменных

-xchg value1, value 2

-mov value1, value2

+mov al,value 1; xchg value 2,al; mov value 1,al

 

?Какой символ определяет систему счисления для шестнадцатеричной константы?

-d

-o

+h

 

?Если используются команды безусловного перехода, то программа:

+начинает выполняться с новой ветви в любом случае

-начинает выполняться с новой ветви

-начинает выполняться с новой ветви только в том случае если определённое условие является истинным.

 

?При помощи какой команды можно организовать цикл в языке ассемблера?

+jmp

-loop

-в языке ассемблера не существует циклов

 

?в результате выполнения следующих команд: mov ax,0; mov cx,5; top:; inc ax; loop top; значение регистров ax и cx будут:

-ax=0, cx=5

-ax=5, cx=5

+ax=5, cx=0

 

?Что определяет директива.code?

+отмечает начало сегмента

- отмечает начало данных

- отмечает начало памяти

 

?Стек – это:

+специальный буфер в памяти, который используется для временного хранения адресов и данных

-специальный буфер в памяти, который используется для постоянного хранения адресов и данных

-специальный буфер в памяти

 

?Принцип работы стека:

-первым пришёл – первым вышел

+последним пришёл – первым вышел

-последним пришёл – последним вышел

 

?В результате команд:mov ax,57; push ax

-изменится значение ax и поместится в стек

+не изменится значение ax и поместится в стек

-ошибка

 

?Указателем стека является:

+sp

-bp

-ax

 

?После извлечения значения из стека:

+указатель инкрементируется

-указатель декрементируется

-указатель не изменяется

 

?Какая из команд декрементирует указатель стека SP?

-такой команды не существует

-pop

+push

 

?Подпрограмма для ввода/вывода, управления файлами управления памятью:

-int 10h

+int 21h

-int 10h

 

?Команды cmp o1,o2:

+операнд o2 вычисляется из o1, результат нигде не сохраняется, команда просто изменяет регистр признаков

-операнд o1 вычисляется из o2, результат нигде не сохраняется, команда просто изменяет регистр признаков

-операнд o1 вычисляется из o2, не изменяя регистр признаков

 

?Какая команда вычисляет поразрядное «и» операндов?

-cmp

+test

-call

 

?Команда безусловного перехода

+jmp

-jx

-loop

 

?Команда jmp аналог конструкции

+goto

-loop

-for

 

?Команде безусловного перехода нужно передавать:

+один параметр

-два параметра

-она не имеет параметр

 

?Тип перехода команды jmp является:

-обязательным

+необязательным

-устанавливается по умолчанию

 

?Переход типа far, кроме регистра IB ещё модифицирует

+cs

-es

-si

 

?Метка – это:

+идентификатор, который заканчивается двоеточием

-идентификатор, который начинается с @

-идентификатор, который начинается с @ и заканчивается двоеточием

 

?jz metka

+ переход к metka, если zf=1

- переход к metka, если zf=0

- переход к metka, в любом случае

 

?При помощи каких команд в ассемблере можно реализовать цикл с параметром

+команда условного перехода и метка

-команда безусловного перехода и метка

-команда условного и безусловного перехода

 

?Команда loop работает:

-с одним операндом

+с двумя операндами

-не имеет операндов

 

?Используя инструкцию loop метка уменьшается значение регистра

+ecx (cx)

-eax (bx)

-ebx (bx)

 

?Какая команда позволяет организовать цикл с проверкой дополнительного условия:

+loopz

-loop

-не существует такой команды

 

?Вершина стека представлена парой:

+ss:sp

-si:sp

-ss:si

 

?Данные в стек записываются:

+по меньшему адресу

-по старшему адресу

-в любое место

 

?Какие данные может поддерживать стек?

-любые

-8-битные

+16- и 32-битные

 

?Команда push позволяет:

-поместить в стек содержимое любого 16 битного регистра

+поместить в стек содержимое любого 16 битного регистра или ячейки памяти

-извлечь из стека содержимое любого 16 битного регистра

 

?Какая команда записывает в свой операнд значение вершины стека?

+pop

-push

-mov

 

?Что произойдёт в результате выполнения следующих команд push eax;push esi;…;pop eax; pop esi;

+поменяются местами значения

-в регистрах eax и esi будут одинаковые значения

-ничего не произойдёт

 

?С помощью каких команд можно реализовать команду pop?

+mov и add

-mov и sub

-mov и push

 

?Какие команды не имеют операндов?

-push и pop

+pusha и popa

-push и pusha

 

?Какие команды помещают в стек регистр признаков?

+pusht/popf

-push/pop

-pusha/popa

 

?Для вызова подпрограммы используется команды:

+call

-ret

-proc

 

?Какой параметр можно передать команде call

-значение регистра

-адрес переменной

+адрес начала подпрограммы

 

?Используя какую команду можно вызвать программное прерывание?

+int

-inc

-ink

 

?Файловой системой называется:

+часть операционной системы, предназначенной для управления данными, записанными на постоянных носителях

-группа архивных фалов

-основные команды для управления работы компьютера

 

?Файловая система включает в себя:

+механизмы записи, хранения и чтения данных;

-механизмы преобразования типов данных;

-механизмы чтения, обработки и удаления данных.

 

?Позиция в файле определяется указателем, значение которого определяется:

+количеством прочитанных или записанных байтов

-строго фиксированным количеством слов

-только количеством прочитанных символов

 

?Функция открытия файла:

+0x3D

-ОхЗЕ

-0x3F

 

?Функция 0х3Е предназначена для:

+закрытия файла

-открытия файла

-чтения данных из файла

 

?Для записи в файл используется функция:

+0x40

-0x3D

-0x3F

 

?Указатель на имя файла передается через пару регистров:

+DS:DX (DS — сегмент, а DX — смещение)

-АХ:DX (АХ — регистр, а DX — сегмент)

-DS:AL(DS — сегмент, а AL — регистр)

 

?Функция 0х6С предназначена:

+для открытия и создания нового файла, если при открытии файла обнаружится, что файла с таким именем не существует

-только для открытия нового файла

-только для создания нового файла

 

?Для поиска позиции в файле предназначен системный вызов:

+0x42

-0x41

-0x43.

 

?Функция 0x41 предназначена для:

+удаления файла на диске

-поиска позиции в файле

-изменения атрибутов

 

?Переименование файла осуществляется с помощью системного вызова

+0x56

-0x43;

-0x39.

 

?Для создания каталога используется функция:

+0x39

-0х3В

-0x47

 

?Функция 0х3А предназначена для:

+удаления каталога

-смены текущего каталога

-создания каталога

 

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

+если флаг переноса установлен (CF=1), то вызов завершился ошибочно

-если флаг переноса не установлен (CF=0), то вызов завершился ошибочно

-если флаг переноса установлен (CF=1), то вызов завершился корректно

 

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

-в регистре АХ

-с помощью системного вызова АН=0x59

-в Ralf Brown Interrupt List

+возможен любой из вариантов

 

?Команда CLI (Clear Interrupt) позволяет:

+сбрасывать флаг прерывания IF, т.е. запрещать аппаратные прерывания

-устанавливать флаг прерывания IF, т.е. разрешать аппаратные прерывания

-сбрасывать флаг прерывания IF, т.е разрешать аппаратные прерывания

 

?Определите верный комментарий к данной строке xchg byte [variable],с1:

+меняем местами один байт памяти и CL

-загружаем один байт памяти в CL

-вычитаем один байт памяти из CL

 

?Команда LEA

+вычисляет эффективный адрес второго операнда и сохраняет его в первом операнде

-вычисляет эффективный адрес первого операнда и сохраняет его во втором операнд

-меняет местами адреса первого и второго операндов

 

?Правильный синтаксис команды LEA:

+LEA о 1, [о2]

-LEA о 1, о2

-LEA о 1, о2, о3

 

?Определите верный комментарий к данной строке le a e d i, [ebx*4+ecx]:

+загружает в регистр EDI адрес, вычисленный как EDI = ЕВХ'^4+ЕСХ

-меняет местами адрес EDI и адрес вычисленный как EDI = ЕВХ'^4+ЕСХ

-помещает регистр EDI по адресу ЕВХ'^4+ЕСХ

 

?Строкой в языке ассемблера называется:

+последовательность символов (байтов), заканчивающаяся нулевым байтом

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

-строго упорядоченная по возрастанию или убыванию последовательность символов, начинающиеся нулевым и заканчивающиеся n-ым байтом.

 

?Команды STOSx предназначены для:

+записи строки в память

-чтения строки из памяти

-сравнения строк

 

?Для чтения строки из памяти предназначена группа команд:

+LODSx

-STOSx

-CMPSx

 

?Команда STOSB:

+копирует содержимое регистра AL в ячейку памяти, адрес которой находится в паре регистров ES:(E)DI, и уменьшает или увеличивает на единицу значение регистра (E)DI

-копирует содержимое регистра AL в ячейку памяти, данные берутся из регистра АХ, а (E)DI уменьшается/увеличивается на 2

-копирует содержимое ЕАХ, а E(DI) уменьшает/увеличивает на 4

 

?Команды CMPSx предназначены для:

+сравнения строк

-поиска символа в строке

-чтения строки из памяти

 

?Для «общения» с периферийным или другим устройством на аппаратном уровне используются команды:

+IN и OUT

-REP и REPZ

-CMPSx

 

?Для повторения следующей команды используются команды:

+REP и REPZ

-IN и OUT

-SCASx

 

?Для чего предназначена команда NOP?

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

-Для ускорения работы периферийных устройств

-Для замедления работы процессора, т.к. периферийные устройства работают медленнее и им нужно

время, чтобы обработать запрос

 

?Команды SHR и SHL используются для:

+для поразрядного сдвига беззнаковых целых числа вправо и влево соответственно

-для поразрядного сдвига целых чисел со знаком (арифметического сдвига)

-для циклического поразрядного сдвига (ротации)

 

?Укажите команды выполняющие циклический поразрядный сдвиг (ротацию):

+RCR и RCL

-SHR и SHL

-IN и OUT

 

?Для определения порции данных размера, кратного слову, служит директива:

+DW (define word)

-DB (define byte)

-DD (define double word)

 

?Директива DD (define double word):

+задает значение порции данных размера, кратного двойному слову

-позволяет определить числовые константы и строки

-определяет порции данных размера, кратного слову

 

?Для резервирования памяти служит три директива:

-RESB

-RESW

-RESD

+все вышеперечисленные

 

?Директива RESD служит для:

+резервирования двойного слова

-резервирования байта

-резервирования слова

 

?Какие из директив не используются в паре с другой командой?

-TIMES

-REP

+NOP

 

?Псевдокоманда TIMES предназначена для:

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

-подключения двоичного файла

-вычисления константных выражений

 

?Для подключения двоичного файла (упаковки графических или звуковых данных вместе с исполняемым файлом) предназначена команда:

+INCBIN

-TIMES

-EQU

 

?Псевдокоманда EQU предназначена для:

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

-подключения двоичного файла

+вычисления константных выражений

 

?Нужно добавить к значению константу. Какие из команд будут выполнены быстрее?

-add еах,4;

+inc еах; добавляем 1 к ЕАХ; inc еах; inc еах; inc еах

-add еах,3; добавляем 3 к ЕАХ; inc еах; добавляем 1 к ЕАХ

 

?В какой из строк указан верный комментарий?

+lea еbх [еах+еах*4-1]; ЕВХ = ЕАХ*5 - 1

-lea еbх [еах+еах*4-1]; ЕВХ = ЕАХ*4

-lea еbх [еах+еах*4-1]; ЕВХ = ЕАХ*5

 


Дата добавления: 2015-12-01; просмотров: 21 | Нарушение авторских прав



mybiblioteka.su - 2015-2024 год. (0.286 сек.)