- •Понятие алгоритма: рекурсивные функции, системы текстовых замен.
- •Системы счисления, переводы чисел из одной позиционной системы в другую.
- •Передача параметров в подпрограмму, параметры входные и выходные, параметры, передаваемые по значению и по адресу.
- •Использование подпрограмм, параметры формальные, локальные, глобальные, обращения к подпрограммам, фактические параметры.
- •Статические и динамические переменные, динамическая память, работа с динамическими переменными.
- •Понятие линейного связного списка, типы списков, представление стека с помощью массива, пример использования стека.
- •Использование динамических переменных для представления и работы со стеком.
- •Очередь, реализация очереди массивом.
- •Очередь, представление и реализация основных операций с помощью динамических переменных.
- •Реализация основных операций со списком: добавление, удаление, поиск.
- •Деревья, основные операции над деревьями, представление дерева массивом.
- •Двусвязные линейные списки, построение и обход бинарного дерева.
- •Операции поиска и удаления в бинарном дереве.
- •Понятие графа, представление графа на эвм.
- •Представление графа списком инцидентности, алгоритм обхода графа в глубину.
- •Представление графа списком списков, алгоритм обхода графа в ширину.
- •Технологии программирования, концепции, заложенные в ооп.
- •Основные понятия ооп: абстракция, инкапсуляция, полиморфизм.
- •Понятие объекта, его состояние и поведение, классы, определение класса и объявление класса.
- •Статические, дружественные и виртуальные поля и методы, особенности их использования.
- •Абстрактные классы, их назначение и использование.
- •Понятие области видимости: общие, личные, защищённые и опубликованные поля и методы объекта.
- •Указатель this и перегрузка методов.
- •Использование классов, различные способы инициализации.
- •Использование классов, работа с массивами и указателями на обьекты.
- •Наследование, пример использования наследования.
- •Конструкторы и деструкторы, их назначение и использование.
- •Архитектура пк, основные функциональные устройства и их назначение.
- •Мп с точки зрения программиста, регистры общего назначения.
- •Оперативная память, понятие исполняемого и физического адреса, сегментные регистры.
- •Регистр флажков, его назначение и использование.
- •Форматы данных и форматы команд, машинный формат двухадресной машины.
- •Адресация операндов, способы адресации, примеры команд с различными способами адресации.
- •Понятие команды и директивы в Ассемблере, формат команды и директивы.
- •Структура программы на Ассемблере с использованием стандартных директив сегментации.
- •Основные элементы языка Ассемблер: имена, константы, переменные, выражения.
- •Директивы определения данных и памяти, примеры.
- •Команда прерывания, команды работы со стеком.
- •Упрощённые директивы сегментирования, структура программы с использованием точечных директив, пример программы.
- •Этапы выполнения Ассемблерной программы на эвм, понятие com-файла.
- •Различие между exe - и com – файлами, требования, предъявляемые к исходному модулю, предназначенному для создания com – файла, примеры программ.
- •Понятие структурного программирования, этап проектирования – композиция и декомпозиция, понятие статической и динамической структуры программы, спецификация программы.
- •Понятие частичной и полной корректности программы, правила вывода – общий вид, правила консеквенции.
- •Правила вывода для операторов: пустого, присваивания, составного.
- •Правила вывода для операторов ветвления.
- •Правила вывода циклов с предусловием и посусловием.
Регистр флажков, его назначение и использование.
Биты 1,3,5,15,19-31 – не используются, зарезервированы.
В реальном режиме исп-ся 9 флагов : 6 регистрируют на результат выполнения команды,3 определяют режим работы процессора.В защитном режиме 5 доп. Флагов, определяющих режим работы процессора.
CF=1,если при выполнении команды сложения осуществляется перенос за разрядную сетку,а при вычитании требуется заем.
PF=1,если в младшем байте рез-та содержится четное кол-во единиц
AF=1,если осущ. Перенос(заем) из 3-го разряда байтов в 4-й и наоборот
ZF=1,если результат- во всех разрядах результата.
SF всегда =знаковому разряду результата
TF=1, прерывает работу процессора после каждой выполненной команды.
DF определяет направление обработки строк данных,если DF=0 –обработка строк идет в сторону увеличения адреса и если =1,то в сторону уменьшения(автомат. Увеличение или уменьшение содержимого регистров индексов SI и DI).
Форматы данных и форматы команд, машинный формат двухадресной машины.
Процессор может обрабатывать большой набор различных типов данных.Целые числа без знака могут занимать слово,байт,двойное слово и принимать значения из диапазонов 0-256,0-65535,0-4294967295.
Целые числа со знаком : -128-127, -32768-32767,-2147483648-2147483647 и хранятся в дополнительном коде. Доп. Код «+» численно равен самому числу,а доп.код «-» : х=10n-|x|, n-разрядность. Для (-AC716): 104АС7=F539
Доп.код двоичного числа (-)-й могут занимать 32 бита(короткое вещественное) 64 бита(длинное) 80бит (рабочее вещ-ое) Формат такого числа состоит из 3-х полей ,знак числа машинные порядок и мантисса.
КВ:1+8+23-10-+32-+10-+35
ДВ:1+11+52-10-+308-+10-+308
РВ:1+15+64-10-+4932-+104932
Машинный порядок (Пм) включает всей(пн) формулой :ПМ=ПН+12710(102410,1638310)
Мантисса д.б нормализована (старшая цифра=1 и не умещается в разрядной сетке)
Пример 1)306010=BP416
Десятично-двоичные данные процессором могут обрабатываться 8-ми разрядные в упакованном и неупакованном формате. Хранение 2 цифр в байте хранить одну цифру в цифровой части байта.
Символьные данные символы в коде ASCII для любого символа сводится 1 байт. Строковые данные-последовательность бит,байт,слов или двоичных слов.
Указатели-длинный(знаимает 48 бит) –селектор(16)+смещение(32)
-короткий (занимает 32 бита) только смещение
Машинный формат 2ч адресной команды 1 операнд находится в регистре а второй в регистре или памяти:
dispH/disp L-стандартная(младшая часть смещения)
«над операции»(иногда «reg»)- определяют выполняемую операцию.
d-место хранения 1-го операнда.Если w=0 то работа с байтами, =1-со словами.
Reg-определяет один операнд,хранимый в регистре.
Mod,disp H,disp L- второй операнд(может хранится в памяти)
Если mod=11,то второй операнд находится в регистре,определяется полем I/m
Disp H/L- отсутствует, команда займет 2 байта если mod< > 11; т.е 2-й опернад нах-ся в памяти.
З начение поля «mod» определяет как используется смещение
00,disp-отсутствует
mod 01,disp=disp L- с распространением знака до 16
10,смещение состоит из disp H и disp L