logo search
Shpory_Sistemnyy_analiz

14. C#.Наследование.Ограничения при наследовании.

Важнейшим св-вом ООП явл-ся наследование.Для того, чтобы показать,что класс В наследует класс A (класс B выведен из класса A),в опр-ии класса B после имени класса ставится двоеточие и затем перечисляются классы,из кот.B наследует:class<производный_класс>:<базовый_класс>

class A

{public:

A();

~A();

MethodA();};

class B : public A

{public:

B();

. . .};

Термин "наследование" озн-т,что класс B обладает всеми св-вами класса A,он их унаследовал.У объекта производного класса есть все атрибуты и методы баз.класса. Новый класс может добавить собств.атрибуты и методы.Ключ.слово public перед именем баз.класса опр-т,что внеш.интерфейс баз.класса стан-ся внеш.интерфейсом порожденного класса. Это наиболее употребляемый тип наследования.С# не поддерживает множественное наследование.Но можно объединять хар-ки поведения нескольких программных сущностей,реализовав несколько интерфейсов.Интерфейсы, выбранные для реал-ции,перечисляются после баз.класса дан.класса.Пример:класс MyClass происх-т от Control и реализует интерфейсы Foo к Bar:

class Control { } interface IFoo interface IBar { } class MyClass:Control,IFoo,IBar { } Главное здесь то,что единств.способом реал-ции чего-либо, напоминающего множественное наследование,на С# явл-ся прим-е интерфейсов.

6.Синтез цифровых схем. Триггеры. Триггер – простейшее последовательное устройство, к-ое может длительно находиться в одном из неск-ких устойчивых состояний и переходить из одного в другое. Классификация триггеров. Сформулируем принципы, на основании которых в дальнейшем будет производиться классификация триггеров. Так как триггеры являются простейшими автоматами, то независимо от способов их построения триггеры, как и автоматы, будут разделяться на три класса: *асинхронные потенциальные триггеры, в ф-ии переходов к-ых не входят операторы перехода d; *асинхронные импульсные триггеры, ф-ции переходов к-ых содержат операторы перехода d; *синхронные триггеры, к-ые являются частным случаем асинхронных импульсных триггеров (ф-ии переходов синхронных триггеров содержат только импульсный сигнал dH, где Н — тактовый сигнал). Триггеры типа Т. Синхронный Т-триггер имеет один информационный вход Т разрешения изменения состояния триггера на инверсное и описывается ф-ями переходов

Вход Т называется счетным входом триггера, т.к. при двоичном счете младший разряд числа изменяется с 0 на 1 или с 1 на 0 в каждом такте.

Триггеры типа D. Синхронный D-триггер имеет входы для подачи информационного сигнала D и тактового сигнала Н, причем значение вых.сигнала z=Q опр-ется значением сигнала D в момент изменения тактового сигнала Н с 1 на 0 (при dH = 1). При dH = 0 вых.сигнал триггера не изменяется. Составив диаграмму Вейча для функции переходов,получим:

Схема асинхронного RS-триггера доопр-ного до единицы на элементах 2И-НЕ:

На рис приведены условные графич.обозначения синхронных триггеров типов R-S и D-L, а также синхронно- асинхронного D-L/R-триггера с инверсным входом R (активный уровень сигнала R = 0). На вход С (Clock— часы) подается тактовый сигнал Н. Динамич. (импульсный) вход обозначается треугольником. При аналитич.описании триггеров считается, что изменение их состояний вызывает переход тактового сигнала с 1 на 0. Синхронные триггеры типа J-K. Этот триггер имеет два информационных входа: J — вход разрешения установки состояния Q = 1, К — вход разрешения установки состояния Q = 0 (при J = К = 1 состояние триггера изменяется на инверсное). Функция переходов J-K-триггера: