Главная - Литература

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 [20] 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41

р состояние (ИООО)а=-(24)io мультиплексор переключается в последнее состояние н на его выходе появляется сигнал низкого уровня, блокирующий работу формирователя импульсов совпадения DD2.1 яо входу D. В результате учетчик DD3 уже ие меняет своего состояния, н условный рефлекс превратил-в безусловный (закрепился навсегда). Вечный календарь. С помощью этого устройства можно по дате определи1Ъ день недели от 1500 до 2300 годов. Для составления алгоритма работы авто-fiiia воспользуемся табл. 19. Из таблипы видно, что дни недели повторяются для определенных столетий, годов, месяцев н недель. При пользовании таким

Т а 0 л и ц а

S<7

у«

>

Столетия

Cmafls/ii

Нввл/й

£

£

£

£

£

£

£

«77

с£

£p

£if

«77

£3

*

ll/n

ll/t

V SaM



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

Обозначим строки и столбцы таблицы следующим образом: А - номер столбца годов внутри каждого столетия (А=1...7); В - номер строк месяцев (В=0-. 6); С - номер строк столетий (С=0...6); D - номер строк дней месяца (D=0...6).

При таких обозначениях и заданных значениях аргументов алгоритм определения дня недели сводится к следующему

[8 + (А-1-1) + (Б-С)1 I L

Стрелки здесь означаТот анализ результата и логическое преобразование суммы в квадратных скобках в число М, а суммы в круглых скобках -- е число N.

Скачала акалиэируется сумма £ в квадратных скобках, при этом; если 2=0+П1, где т=2...8, то М=п)-1; если 2=8+п, где п=! ..7, то М=-п.

Наконец, если l=16-J-k, где к>0, то Mk+l. Затем анализируется сумма (M-J-D)=S:

если 2"=0+1, где 1=1. .7, то N=1,

а если S" = 8--f, где f=0... 6, то N-f+l.

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

Функциональная схема «Вечного календаря» показана на рис. 59. В устройстве четыре наборных поля для набора даты. Сигналы с каждого наборного поля поступают на кодировщики-шифраторы чисел А, В, D н формирователь дополнительного кода (С+1) числа С. Следует отметить, что, кроме кодировщика А, имеется также формирователь кодов високосного и невисокосного годов, так как в таблице строки, соответствующие январю и февралю високосного и невисокосяого годов, различны. Високосные годы кратны 4 « выделены в столицах таблицы. Сумматор 2i определяет разность чисел (A-f--J-8) и С, а сумматор 22 сумму этой разности и числа В. Логическое устройство Л1 анализирует результат суммирования чисел в квадратных скобках указанной выше формулы. Оно работает таким образом, что первоначально (до анализа) на сумматор 2i подается с логического устройства высокий уровень, а на сумматор - низкий уровень. Если в результате анализа к числу надо добавить 1, то единица подается вместо О на сумматор 22. Если же от числа m надо отнять 1, то вместо I иа сумматор Sj подается 0.



/юле

етелетаа

С *f

JfaSepftot

Ховирвв-

/геле

/тале месяцев S

Мвировщш 8acg/(ee/fo-га и HeSti -санос оев

ifeffupeS-ща/t В

Лаг и чес-

кае t/C/rrftaacT-во Jfl

Лагичее-

во 2

MafopHoe /теле

S/ieu 2

Нвиров-щи/г

-*

Цифравай иа/пор

да/пор

Рис. 59. Функциона.1ьная сема автомата «Вечный календарь»

Логическое устройство Л2 до анализа суммы (M-fD) на выходе сумматора 2з подает на этот сумматор сигйал низкого уровня, а прн необходимости к числу f добавляется 1 подачей сигнала высокого уровня на сумматор Zs-

Схемы кодировщиков А, В, С-(-1, D и формирователя кода високосного и невисокосного годов приведены на рис. 60 и 61. В качестве наборного поля используются разъемы с различным числом контактов: XI..., Х2 .... ХЗХ4 ... Набор числа осуществляется соединением общего провода с соответствующим контактом разъема. Контакты разъемов с ноиераин годов, статетнй, чисел н месяцев, для которых значения аргументов А, В, С, D повторяются,

соединены между собой. Кодировщики чисел А, В, С-Ы, D построены по традиционным схемам (см. с. 47-49). На рис. 60 показан также кодировщик високосного и невисокосного годов (DD15, DD16, DD17.2, DD17.3). При одновременной подаче низкого уровня на контакт разъема XI и контакты разъема

соответствующие январю (I) илн февралю (П), на одном из выходов вис, Нвис, Ппр (рис. 60) появляется Уровень логического нуля. Сигналы с вы--одоа Пвис, 1пнс и Нпр в дальнейшем используются для формирования кода числа В (месяцы, рис. 61 ,а).

Схема решающего блока изображена иа рис. 62. На сумматор DDI подаются коды чисел (А+8) и (С-И), на сумматор DD2 - код суммы (.А-Ь +8) + (с+1) н код числа В, а иа сумматор DD3 - код суммы с выхода DD2 и Код числа D. Кроме того, на входы РО сумматоров DDI-DD3 могут быть по-Аны высокие или низкие уровни с логических устройств Л1 (DD6, DD7.1, 8.1, DD9.1) или Л2 (DD8.2). Результат трех младших разрядов на вы-Де сумматора DD3 преобразуется в семисегментный код (дешифратор DD4) и высвечивается иа индикаторе HLI.

На элементах микросхемы DDI О собран тактовый генератор, который Wftcre с универсальным регистром DD5 выполняет функции устройства управ-

--137 65



0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 [20] 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41



0.0083