- •1. Понятие алгоритма: рекурсивные функции, системы текстовых замен.
- •2.Системы счисления, переводы чисел из одной позиционной системы в другую.
- •3/4.Понятие подпрограммы, функции, возвращающей/не возвращающей значение в
- •5.Передача параметров в подпрограмму,параметры входные и выходные,параметры,передаваемые по значению и по адресу.
- •6.Использование подпрограмм, параметры формальные, локальные, глобальные, обращения к подпрограммам, фактические параметры.
- •8.Статические и динамические переменные,динамическая память,работа с динамическими переменными.
- •9.Понятие линейного связного списка, типы списков, представление стека с помощью массива, пример использования стека.
- •10.Использование динамич. Переменных для представл. И работы со стеком.
- •11.Очередь,реализация очереди массивом.
- •12.Очередь, представление и реализация основных операций с помощью динамических переменных.
- •13.Реализация основных операций со списком:добавление, удаление, поиск.
- •14.Деревья,основные операции над деревьями, представление дерева массивом.
- •15.Двусвязные линейные списки, построение и обход бинарного дерева.
- •16.Операции поиска и удаления в бинарном дереве.
- •17.Понятие графа, представление графа в эвм.
- •18.Представление графа списком инцидентности,алгоритм обхода графа в глубину.
- •19.Представление графа списком списков,алгоритм обхода графа в ширину.
- •20.Технологии программирования,концепции,заложенные в ооп.
- •21.Основные понятия ооп:абстракция, инкапсуляция,полиморфизм.
- •22.Понятие объекта,его состояние и поведение,классы,определение класса и объявление класса.
- •23.Статистические,дружественные и виртуальные поля и методы,особенности их использования.
- •24.Абстрактные классы,их назначение и использование.
- •25.Понятие области видимости:общие,личные,защищенные и опубликованные поля и методы объекта.
- •26.Указатель This и перегрузка методов.
- •27.Использование классов,различные способы инициализации.
- •28.Использование классов,работа с массивами и указателями на объекты.
- •29.Наследование,пример использования наследования.
- •30.Конструкторы и деструкторы, их значение и использование.
- •31.Архитектура пк, основные функциональные устройства и их значения.
- •32.Мп с точки зрения программиста,регистры общего назначения.
- •33.Оперативная память,понятие исполняемого и физического адреса,сегментные регистры.
- •34.Регистр флажков, его назначение и использование.
- •35.Форматы данных и форматы команд.
- •36.Адресация операндов,способы адресации,примеры команд с различными способами адресации.
- •37.Структура программы на Ассемблере.Стандартные директивы сегментации.
- •38.Формат команды и директивы на Ассемблере.Примеры команд и директив.
- •39.Алфавит,слова,константы,переменные и выражения в Ассемблере.
- •40.Директивы определения данных и памяти.
- •41.Команды прерывания, команды работы со стеком.
29.Наследование,пример использования наследования.
В ООП существует возможность создания иерархии классов, при которых создаваемые производные классы — потомки,могут наследовать свойства базовых родительских классов. Свойства могут изменятся. Простое наследие — класс-потомок имеет одного родителя. class <имя производного класса>:<ключ доступа><имя базового класса>{<тело класса>}, где ключ доступа — public, private, protected.
Пример: class X {…}; class Y {…}; class Z {…}; class W: X, protected Y, public Z {…}.
Ключ доступа в базовом классе в потоке private нет доступа private protected private| public private| private нет доступа protected protected protected| public protected| private нет доступа public protected public| public public
Если родительский класс наследуется с ключом private, то некоторые элементы можно сделать доступными в потоке,описав его в теле потока с нужным ключом доступа
class roditel {… public: int method_1(); …}; class potok: private roditel {… public: roditel::int method_1(); …}; Метод с именем method_1 класса родитель будет общедоступным в объектах класса potok. Пример наследования: class xmax{protected : static const int n = 2; int x[n]; int max_x (int x[n]) {int I;s = x[0]; for (i=0; i<n; i++) if (s<x[i]) s = x[i]; // поиск максимума; return s;}; class tabl: public xmax; {pubic: int sum_max (int y[n][n]) //сумма максимумов строк; {int i, j, sum; sum = 0; for (i=0; i<n; i++) {for (j=0; j<n; j++) x[j] = y[i][j]; sum+=max_x(x);}; return sum;};}; int main() {const int m = 2; tabl obj1, obj2; int i, j, rez; int arr1[m][m] = {{7,5},{3,4}}; int arr2[m][m];
30.Конструкторы и деструкторы, их значение и использование.
Конструктор — специальный метод, имеющий имя,совпадающее с именем класса. Предназначен для инициализации. Не должен возвращать значение и на него нельзя получить указатель. Конструктора без параметров — по умолчанию. Параметры конструкторов могут быть любого типа, кроме типа класса. В одном классе может быть несколько разных конструкторов для разных способов инициализации.
Если конструктора нет, то вызывается конструктор по умолчанию для инициализации полей данных объекта. Но если использованы константы и ссылки => ошибка. Конструкторы не наследуются потомками. Конструкторы глобальных объектов надо вызвать до 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); …};
Деструктор — метод,имеющий тоже имя что и класс с добавленным символом (~) - тильда .Если деструктор не определен, то он создается по умолчанию: ~<имя класса>(){}; Вызывается автоматически при уничтожении любого объекта.
31.Архитектура пк, основные функциональные устройства и их значения.
Понятие архитектуры ЭВМ включает в себя структурную организацию аппаратных средств и функциональную организацию, позволяющую реализовывать программное управление этой системой, т.е. набор программно-доступных средств.
В современных ПК реализован магистрально-модульный принцип построения. Все устройства подключены к центральной магистрали,системной шине,которая включает в себя адресную шину,шину данных и шину управления.
Шина — набор линий связи,по которым передается информация от одного из источников к одному или нескольким приемникам.
Адресная шина однонаправленная — адреса передаются от процессора,двунаправленная — данные передаются от процессора и к процессору.
Для организации работ всех устройств используются системы прерывания.
Работа вычислительной системы может быть организована т.о. Что как только внешнему стройству требуется работа процессора,оно вырабатывает специальный сигнал прерывания, который поступает на вход процессора через контроллер пребываний по линииint.Если процессор готов его обработать, он посылает ответный сигнал по линии int a,приостанавливает выполнение программы,проходит к обработке данного прерывания,и если прошло успешно,то процессор возвращается к прерванной программе.