- •Понятие алгоритма: рекурсивные функции, системы текстовых замен.
- •Системы счисления, переводы чисел из одной позиционной системы в другую.
- •Передача параметров в подпрограмму, параметры входные и выходные, параметры, передаваемые по значению и по адресу.
- •Использование подпрограмм, параметры формальные, локальные, глобальные, обращения к подпрограммам, фактические параметры.
- •Статические и динамические переменные, динамическая память, работа с динамическими переменными.
- •Понятие линейного связного списка, типы списков, представление стека с помощью массива, пример использования стека.
- •Использование динамических переменных для представления и работы со стеком.
- •Очередь, реализация очереди массивом.
- •Очередь, представление и реализация основных операций с помощью динамических переменных.
- •Реализация основных операций со списком: добавление, удаление, поиск.
- •Деревья, основные операции над деревьями, представление дерева массивом.
- •Двусвязные линейные списки, построение и обход бинарного дерева.
- •Операции поиска и удаления в бинарном дереве.
- •Понятие графа, представление графа на эвм.
- •Представление графа списком инцидентности, алгоритм обхода графа в глубину.
- •Представление графа списком списков, алгоритм обхода графа в ширину.
- •Технологии программирования, концепции, заложенные в ооп.
- •Основные понятия ооп: абстракция, инкапсуляция, полиморфизм.
- •Понятие объекта, его состояние и поведение, классы, определение класса и объявление класса.
- •Статические, дружественные и виртуальные поля и методы, особенности их использования.
- •Абстрактные классы, их назначение и использование.
- •Понятие области видимости: общие, личные, защищённые и опубликованные поля и методы объекта.
- •Указатель this и перегрузка методов.
- •Использование классов, различные способы инициализации.
- •Использование классов, работа с массивами и указателями на обьекты.
- •Наследование, пример использования наследования.
- •Конструкторы и деструкторы, их назначение и использование.
- •Архитектура пк, основные функциональные устройства и их назначение.
- •Мп с точки зрения программиста, регистры общего назначения.
- •Оперативная память, понятие исполняемого и физического адреса, сегментные регистры.
- •Регистр флажков, его назначение и использование.
- •Форматы данных и форматы команд, машинный формат двухадресной машины.
- •Адресация операндов, способы адресации, примеры команд с различными способами адресации.
- •Понятие команды и директивы в Ассемблере, формат команды и директивы.
- •Структура программы на Ассемблере с использованием стандартных директив сегментации.
- •Основные элементы языка Ассемблер: имена, константы, переменные, выражения.
- •Директивы определения данных и памяти, примеры.
- •Команда прерывания, команды работы со стеком.
- •Упрощённые директивы сегментирования, структура программы с использованием точечных директив, пример программы.
- •Этапы выполнения Ассемблерной программы на эвм, понятие com-файла.
- •Различие между exe - и com – файлами, требования, предъявляемые к исходному модулю, предназначенному для создания com – файла, примеры программ.
- •Понятие структурного программирования, этап проектирования – композиция и декомпозиция, понятие статической и динамической структуры программы, спецификация программы.
- •Понятие частичной и полной корректности программы, правила вывода – общий вид, правила консеквенции.
- •Правила вывода для операторов: пустого, присваивания, составного.
- •Правила вывода для операторов ветвления.
- •Правила вывода циклов с предусловием и посусловием.
Конструкторы и деструкторы, их назначение и использование.
Конструктор — специальный метод, имеющий имя, совпадающее с именем класса. Предназначен для инициализации. Не должен возвращать значение и на него нельзя получить указатель.
Конструктора без параметров — по умолчанию. Параметры конструкторов могут быть любого типа, кроме типа класса. В одном классе может быть несколько разных конструкторов для разных способов инициализации (осуществляется перегрузка конструкторов).
Если конструктора нет, то вызывается конструктор по умолчанию для инициализации полей данных объекта. Но если использованы константы и ссылки => ошибка.
Конструкторы не наследуются потомками. Конструкторы глобальных объектов надо вызвать до main. Нельзя типы static, const, virtual.
Способы объявления объектов Конструкторы в классе
1. Без инициализации Tmoney t; 1) По умолчанию: <имя класса>(){};
2. С инициализацией Tmoney t = (1000.25); 2) Конструктор инициализации
(м.б. несколько);
3. С инициализацией другим объектом Tmoney r = t; 3) Конструктор копирования;
class Tmoney {double summa; public;
Tmoney(){summa = 0.0}; // обнуляем поля данных;
Tmoney(const double &t = 0.0)
Tmoney(const Tmoney &r); …};
Конструктор инициализации: Tmoney::Tmoney(const double &t)
{ summa = round(t*100);}
копирования: Tmoney::Tmoney(const Tmoney &p)
{*this = p;}
Tmoney d1; // инициализация полей нулями;
Tmoney d2(120.25); // конструктор инициализации;
Tmoney d3 = 100; // инициализация временного объекта числом и копирование его в d3;
Tmoney d4 = Tmoney(100); // создание временного объекта и копирование его в d4;
Tmoney d5(d2); // конструктор копирования;
Tmoney d6 = d2; // конструктор копирования;
Деструктор — метод, имеющий тоже имя что и класс с добавленным символом (~) - тильда. Может быть только 1, не наследуется и не выдает значение. Если деструктор не определен, то он создается по умолчанию: ~<имя класса>(){}; Вызывается автоматически при уничтожении любого объекта.
Архитектура пк, основные функциональные устройства и их назначение.
Понятие архитектуры ЭВМ включает в себя структурную организацию аппаратных средств (набор блоков, устройств, обьединенных в данную выч. Систему) и функциональную организацию, реализовать программное управление этой системой т.е набор программно-доступных средств. В современных ПК реализован магистрально – модульный принцип построения. Все устройства (модули) подключены к центральной магистрали, системной шине, которая включает в себя адресную шину, шину данных, и шину управления.
Шина - набор линий связи ,по которым предается информация от 1го из источников к одному или нескольким приемникам.
Адресная шина однонаправленная ,адреса передаются от процессора. Шина данных двунаправленная, данные передаются как от процессора так и к процессору. В шину управления входят линии связи и однонаправленные и 2направелные.
Для организации параллельной работы процессора и устройств в архитектуру компьютера входит система прямого доступа к памяти(ДМА) и интерактивные блоки, включающие в себя устройства управления внешними устр-вами (контролеры, адаптеры) Для синхронизации работы всех устройства используется системы прерывания.
Работа выч.системы может быть организована таким образом что как только какую то внешнему устройству требуется работа процессора, оно вырабатывает спец. Сигнал прерывания который поступает на вход процессора через контролер пребываний по линии Int если процессор готов его обработать ,он посылает ответный сигнал по линии Int a ,приостанавливает выполнение программы ,проходит к обработке данного прерывания,и если прошло успешно, то процессор возращается к прерванной программе.