© Данная статья была опубликована в № 06/2007 журнала "Информатика" издательского дома "Первое сентября". Все права принадлежат автору и издателю и охраняются.      Главная страница "Первого сентября"
     Главная страница журнала "Информатика"
     Содержание № 06/2007
 Использование условного форматирования в MS Excel для динамического анализа логических схем

Предлагаю коллегам

Использование условного форматирования
в MS Excel для динамического анализа логических схем

А.Н. Комаровский,
Россошанская школа-интернат Воронежской области, kan@bk.ru

Очевидно, что цветная иллюстрация нагляднее и информативнее, чем черно-белая, а динамическая — эффективнее статической. А возможны ли динамические визуальные эффекты в электронных таблицах, ведь ни GIF-анимация, ни Flash-формат в них не поддерживаются? Тем не менее MS Excel — самое динамичное приложение из всего офисного пакета, ведь основное свойство электронных таблиц — изменение числового значения в ячейке — приводит к мгновенному пересчету формул, содержащих имя этой ячейки.

Значимость довольно сложной темы “Логические основы компьютера” в школьном курсе вряд ли кто возьмется оспаривать, а времени на ее изучение отводится мало. Порой и сам учитель путается, рисуя и стирая нолики и единицы и “путешествуя” по связям, при объяснении действия вентильной схемы дешифратора или триггера. В этом случае хорошим подспорьем ему и детям могли бы стать яркие, наглядные, динамические модели, которые несложно создать в среде электронных таблиц, позволяющие наглядно и быстро разобраться и понять, как реализуются с помощью функциональных элементов основные процессы в компьютере: пересылка информации (двоичных кодов), запоминание двоичных кодов, выбор команды по коду, преобразование (обработка) кодов.

Если организовать цепочку ячеек, в которой по формуле каждая следующая берет значение из предыдущей, то мы получим динамическую модель передачи информации. Остается только визуализировать эту модель в графической форме. Для этого можно воспользоваться возможностями условного форматирования, существующими в электронных таблицах. Так может быть снята проблема “путешествия” по схемам. А если к этому присовокупить набор функций в Excel, прежде всего основных логических, то снимается “проблема ноликов и единиц” и задача, поставленная в заголовке статьи, оказывается вполне осуществимой1.

Для реализации моделей удобно выделить стандартный лист книги MS Excel и установить ширину столбца на странице равной 2. В этом случае сетка на листе становится похожей на страницу тетради в клеточку.

Логические элементы “И”, “ИЛИ”, “НЕ” изображаются в виде диапазона ячеек размером 2 х 4 клетки, в котором внешняя граница сплошная полужирная. Знаки “&” для “И” и “1” для “ИЛИ” помещаем в соответствующие ячейки диапазона. Кружок для элемента “НЕ”, так же как и контакты соединений, можно создать с помощью панели рисования. Заливку можно сделать белой или цветной — индивидуальной для каждого элемента. В правой ячейке второго ряда элемента помещается формула с соответствующей логической функцией, значения аргументов которой берутся из ячеек на входе элемента. Для преобразования результатов “FALSE” и “TRUE” в “0” и “1” необходимо воспользоваться функцией Ч() из набора функций для проверки свойств и значений. Чтобы скрыть отображение функции внутри логического элемента, цвет символов в этой ячейке должен совпадать с цветом фона. Значение на выходе получаем с помощью ссылки на ячейку с формулой логической функции.

Для построения соединений используется копирование формата (кнопка на стандартной панели) и последующее форматирование соответствующих ячеек одним из семи вариантов заранее отформатированных ячеек-эталонов.

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

По умолчанию цветом Авто тонкой сплошной линией в первой паре ячеек-эталонов выделяется нижняя, во второй паре — правая, а в третьей паре и последней ячейке — нижняя и правая границы.

Для условного форматирования в меню Формат — Условное форматирование… — Условие1: выбирается: значение “равно” и заносится “1”. Нажав кнопку Формат… на вкладке Граница, указывается оформление ячейки, в случае выполнения условия. По условию — цвет границ красный. При нажатии на кнопку А также>> появляется Условие 2, а затем и Условие 3.

Для ячеек 1б, 2б и 3б цвет символов по умолчанию и по условию выбирается белым (цвет фона).

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

— если значение равно 1, то нижняя граница красная, правая — черная;

— при значении 2 нижняя граница черная, правая — красная;

— при значении 3 и нижняя, и правая границы красные.

Значение в ячейке получается по формуле, в которой ссылка на ячейку слева (справа) умножается на 2 и складывается с ссылкой на ячейку сверху (снизу).

Для создания вентильной схемы на рабочем листе MS Excel сначала размещаются условные изображения конструктивных элементов, расположение которых должно быть тщательно продумано. Затем указанным выше способом “вычерчиваются” соединения. Для контроля можно выделить весь лист и по появившимся при этом цепочкам нулей и единиц проследить правильность выполнения схемы.

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

Изменяя значения на входе, отслеживают изменения значений по цепочке. В местах разрыва цепочек корректируют ссылки. Замечательным средством контроля является отслеживание зависимых и влияющих ячеек, которым можно воспользоваться, вызвав в меню Вид — Панели инструментов — Зависимости, и проследить, как, “растекаясь мыслию по древу”, организована передача информации в вашей схеме. Зависимости можно проверить также, если вызвать панель Циклические ссылки в меню Сервис — Настройка. С ней придется столкнуться при создании схемы триггера. Excel контролирует циклические ссылки и не допускает их. Для замыкания цепи в кольцо можно применить “ручную” корректировку или создать для этого соответствующий макрос.

Традиционно в схеме триггера используются наклонные линии соединения входа и выхода. Создатели Excel, видимо, не предполагали таких вариантов использования этого приложения, иначе расширили бы возможности условного форматирования, поэтому схему придется спрямить.

При создании схемы дешифратора естественно желание выделить включаемое устройство. Это можно сделать разными способами. В первом варианте над диапазоном, изображающим устройство, помещаем надпись с прозрачной заливкой и неярким цветом текста. Значение в диапазоне берется с входа, то есть может быть “0” или “1”. Используем условное форматирование, и для случая “0” выберем цвет текста и цвет заливки белым, а для “1” другой — яркий цвет, контрастный с цветом текста надписи. Во втором варианте надпись можно не использовать, а в объединенный диапазон, изображающий устройство, ввести формулу: =ЕСЛИ(V7=1;”Устройство 1”;””), где V7 — ячейка на входе устройства. Затем воспользоваться условным форматированием для диапазона: если значение равно “Устройство 1”, и далее цвет фона, цвет текста и цвет границ по вашему вкусу. Форматирование диапазона по умолчанию будет соответствовать значению “0”.

Для управления работой схем достаточно ввести в ячейки на входе необходимый набор из нулей и единиц и убедиться, что “число управляет миром”. А чтобы избежать соблазна кому-то “испортить” ваше творение, в меню Данные — Проверка…, в окне Проверка вводимых значений, на вкладке Параметры можно выбрать Тип данных: Целое число, Значение: между, Минимум: 0 и Максимум: 1. На вкладках: Сообщение для ввода и Сообщение об ошибке ввести необходимую информацию. В меню Сервис — Защита — Разрешить изменение диапазонов… в диалоговом окне нажать кнопку Создать и в окне Новый диапазон, в строке Ячейки, через кнопку “к ячейкам” указать, при нажатой клавише Ctrl, ячейки, предназначенные для ввода. Затем, выбрав Сервис — Защита — Защитить лист… — можно ввести пароль и нажать Ok. Правда, если вы пожелаете использовать макросы и другие возможности Visual Basic для приложений, то вам придется расстаться с системой защиты, так как в защищенном режиме макросы не работают. В этом случае остается лишь установить атрибут файла “Только чтение”.

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

Если же к этому присовокупить технологию макросов VBA, то это позволит создавать дополнительные динамические эффекты и значительно расширит круг решаемых задач в области дидактики. Но об этом —
в следующей статье “Динамические эффекты в MS Excel”.

Литература

1. Угринович Н.Д. Информатика и информационные технологии. Учебник для 10–11-х классов. М.: БИНОМ. Лаборатория Знаний, 2003, 512 с.: ил.

2. Горохов Н.Н. Основы схемотехники. Информатика
№ 43/1997.