Язык преобразований XSL

       

Языки программирования - концепции

Сказать, что хороший программист может написать хорошее программное обеспечение на любом языке, — это все равно, что сказать, что хороший пилот может управлять любым самолетом: верно, но не по существу. При разработке пассажирского самолета основными критериями являются безопасность, экономическая целесообразность и удобства; для военного самолета главное это летные качества и возможность выполнения боевой задачи; а при создании сверхлегкого самолета необходимо обеспечить низкую стоимость и простоту управления.
Роль языка в программировании принижается по сравнению с программной методологией и инструментальными средствами; и не только преуменьшается, но и полностью отвергается, когда утверждают, что хорошо разработанная система может быть одинаково хорошо реализована на любом языке. Но языки программирования — это не просто инструментальное средство

Значение языков программирования
Структуры данных
Типизация и «неуспех»

Язык преобразований XSL

Данная спецификация определяет синтаксис и семантику XSLT, языка преобразований XML документов в другие XML документы.
XSLT создавался для применения в XSL, языке стилей для XML. Помимо XSLT, XSL содержит словарь XML для описания форматирования. XSL определяет стиль XML документа, используя XSLT чтобы описать, каким именно образом представленный документ преобразуется в другой XML документ, использующий данный словарь форматирования.
Кроме того, XSLT построен так, чтобы использоваться независимо от XSL. Вместе с тем XSLT не позиционируется как полноценный универсальный язык преобразований XML. Скорее наоборот, прежде всего он предназначен для тех видов преобразований, которые необходимы когда XSLT используется как часть XSL.

Пространство имен XSLT
Фиксированные конечные элементы

Язык процедур 2-REXX для OS-2

Язык процедур 2/REXX для OS/2* (именуемый в дальнейшем REXX) разработан как язык процедур Systems Application Architecture* для семейства продуктов типа Office Vision и операционной системы OS/2. Он предназначен для того, чтобы облегчить программирование в стадии кодирования и отладки. Высокое качество программирования может быть достигнуто при использовании общепринятых слов английского языка в синтаксисе языка процедур, что одинаково понятно как начинающему, так и опытному программисту.
REXX использует ряд мощных программных функций общего назначения и стандартные арифметические возможности наряду с командами OS/2 в простой конструкции. Существующие пакетные файлы могут быть преобразованы в процедуры REXX, обладающие большими функциональными возможностями.
Процедуры REXX выполняются только в сеансах OS/2, они должны иметь расширение файла .CMD и начинаться со строки комментария (/*....*/). Также, как и для пакетных файлов, чтобы выполнить процедуру REXX, необязательно указывать расширение .CMD.

Использование сравнений


Язык процедур 2/REXX для OS/2
Работа с переменными и арифметическими выражениями
Средства языка REXX

Автоматизация повторяющихся задач - использование циклов
Расширенные функции REXX
Ключевые инструкции
Функции
Интерфейс очередей

Формальные языки

Основными объектами изучения научного направления "Информатика" являются модели, представимые в памяти компьютера. Методы построения подобных моделей в различных предметных областях основаны на моделях конечных автоматов и формальных грамматик. Широкое использование таких моделей в теоретических исследованиях и разработке систем, используемых на практике, позволяет рассматривать их как одну из основ образования по направлению "Информатика". Главным назначением дисциплины "Формальные языки, грамматики и автоматы" является ознакомление студентов, обучающихся по направлению "Информатика" с основами теории, методами и приемами практического использования аппарата формальных грамматик и конечных автоматов. Изучение дисциплины планируется на 5-ом семестре и включает: курс лекций ( 4 часа в неделю ), лабораторные работы ( 2 часа в неделю ) и курсовую работу.
Лабораторные работы выполняются в компьютерном классе с использованием системы обучения синтаксическому анализу ( ОСА ). Эта система была разработана на кафедре Вычислительной техники в основном силами доц. Разумовского Г.В. и ассистента Кузнецова И.А. Она позволяет автоматизировать некоторые этапы синтеза магазинных автоматов и моделировать их работу.


Трансляторы , интерпретаторы и компиляторы
Приведенные грамматики
Распознаватели и LL(K) - грамматики

Магазинные Преобразователи
Задача структурного синтеза

Языки и исчисления

Центральная идея математической логики восходит еще к Лейбницу и состоит в том, чтобы записывать математические утверждения в виде последовательностей символов и оперировать с ними по формальным правилам. При этом правильность рассуждений можно проверять механически, не вникая в их смысл.
Усилиями большого числа математиков и логиков второй половины XIX и первой половины XX века (Буль, Кантор, Фреге, Пеано, Рассел, Уайтхед, Цермело, Френкель, Гильберт, фон Нейман, Гедель и другие) эта программа была в основном выполнена. Принято считать, что всякое точно сформулированное математическое утверждение можно записать формулой теории множеств (одной из наиболее общих формальных теорий), а всякое строгое математическое доказательство преобразовать в формальный вывод в этой теории (последовательность формул теории множеств, подчиняющуюся некоторым простым правилам). В каком-то смысле это даже стало определением: математически строгим считается такое рассуждение, которое можно перевести на язык теории множеств.
Так что же, теперь математики могут дружно уйти на пенсию, поскольку можно открывать математические теоремы с помощью компьютеров, запрограммированных в соответствии с формальными правилами теории множеств? Конечно, нет, причем сразу по нескольким причинам.

Введение
Высказывания и операции
Схемы из функциональных элементов
Исчисление высказываний
Поиск контрпримера и исчисление секвенций

Языки первого порядка
Выразимость в арифметике
Арифметика Пресбургера
Игра Эренфойхта

Общезначимые формулы
Примеры выводимых формул
Предваренная нормальная форма
Аксиомы равенства

Неполные и неразрешимые теории
Ультрафильтры и компактность

Раздел - Здоровье

Разговор о том, что человек может сделать для своего здоровья сам, лично. Это не про болезни, не про их лечение. Это про то, чтобы у вас не было болезней. На кой они вам? Ну а если все же недосмотрели и недомогание постучалось в ваш организм, есть множество безвредных способов изгнать с позором эту гниду.

Айки-До
Аптека
Бег
Бильярд
Бодибилдинг

Бонсай
Велосипед
Вес
Витамины
Вода

Гимнастика
Гомеопатия
Горные лыжи
Гуг-Фу
Джиу-Джитцу

Долголетие
Домашний доктор
Драки
Дыхание
Дыхание холотропное

Заблуждения
Зрение
Зрение без очков
Иглоукалывание
Карате

Красота
Курение
Лечебные травы
Лечения
Лечения Востока
Лечения народные

Массаж
Медицина
Пауэрлифтинг
Пилатес
Привычки

Профилактика
Рукопашный бой
Советы
Спортивное питание
Терапия

Тибет
Ушу
Фармакология спорт
Фехтование
Физиология

Физкультура
Фитнес
Фитотерапия
Футбол
Фэншуй

Цигун
Энциклопедии

Cамоучитель по Java

Как вы знаете, программа, написанная на одном из языков высокого уровня, к которым относится и язык Java, так называемый исходный модуль ("исходник" или "сырец" на жаргоне, от английского "source"), не может быть сразу же выполнена. Ее сначала надо откомпилировать, т. е. перевести в последовательность машинных команд — объектный модуль.
Но и он, как правило, не может быть сразу же выполнен: объектный модуль надо еще скомпоновать с библиотеками использованных в модуле функций и разрешить перекрестные ссылки между секциями объектного модуля, получив в результате загрузочный модуль — полностью готовую к выполнению программу.
Исходный модуль, написанный на Java, не может избежать этих процедур, но здесь проявляется главная особенность технологии Java — программа компилируется сразу в машинные команды, но не команды какого-то конкретного процессора, а в команды так называемой виртуальной машины Java (JVM, Java Virtual Machine).

Java в Internet
Логический тип
Принципы объектно-ориентированного программирования
Права доступа к членам класса

Числовые классы
Как найти подстроку
Класс Vector
Взаимодействие с системой
Иерархия классов AWT
Преобразование координат

Класс Cursor
Менеджер BorderLayout
Событие ItemEvent
Всплывающее меню
Параметры тега applet

Изменение составляющих цвета
Часть заголовка метода throws
Синхронизация подпроцессов
Печать в Java
Работа по протоколу TCP
Архиватор jar

Электроника автомобильных систем управления

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

Условия работы электронной аппаратуры автомобилей
Электроника в автомобиле
Автолюбителям об электроннике
Автомобильная противоугонная система
Тестер форсунок – микротестер Версия 2.04

Элементы систем впрыска
Диагностика и ремонт инжекторных авто
Универсальный адаптер K-L-line v.2.1
Чип-тюнинг автомобилей ВАЗ
FAQ по Мотор-Тестеру
Программно-аппаратный комплекс для работы с инжекторами

Подсистема маршрутного компьютера
Датчик расхода топлива
Программно-аппаратный комплекс Мотор-Тестер 1.2.0.6
Электронный термометр
Palm - диагностика инжекторов
Схемы подключения компьютеров к k-line

Адаптер K-Line
Описание программатора микросхем 27С256 / 27C512
Описание протокола взаимодействия с ЭБУ Микас 5.4 и 7.1
Двухрежимные прошивки
Контроллеры применяемые на переднеприводных ВАЗ семейства 2108 и 2110

Нейтрализатор для автомобиля
Совмещение штатного иммобилайзера впрысковых автомобилей ВАЗ с сигнализацией
Автозапуск двигателя автомобиля
Разделительный фильтр-кроссовер для автомобильного сабвуфера
Электронный тахометр для жигулей на КР1878ВЕ1

Project 2003 для менеджеров

Project — программный продукт компании Microsoft, призванный помочь менеджерам и руководителям в управлении проектами. Программы Word, Excel и Outlook лишь отчасти способствуют автоматизации рабочего места менеджера, программа Project помогает решить эту проблему. При планировании проекта нужно составить список задач, требующих решения, и список ресурсов, которые могут в этом помочь, а затем назначить ресурсы задачам. На этапе осуществления проекта необходимо следить за ходом работы, сроками и затраченными средствами. Project автоматизирует эти процессы.
В России Project используется не так давно, после появления версии 2002, хотя существует он уже почти 10 лет. На сегодняшний день последней версией является Project Professional 2003. Кроме Professional существуют Project Standard, Server и Web Access. Это не значит, что данный раздел не подходит для изучения Project Standard 2003 или какой-либо другой версии программы, просто между версиями могут быть некоторые различия. Хотя Project 2002 практически не отличается от 2003, так что раздел в каком-то смысле универсален. Рассмотрим версии программы Project подробнее.
Project имеет стандартный для всех офисных приложений Microsoft интерфейс. Пользователям, которые умеют работать в Word и Excel, Project никаких сложностей не доставит. Если навыков нет, тоже не беда — пользоваться Project просто и понятно на интуитивном уровне. Есть и существенное отличие. Для нормального использования Project необходим какой-либо самоучитель, книга или хотя бы встроенная система помощи. Необходимость в помощи возникает не из-за непонятного интерфейса, а потому что не все будущие пользователи Project знают, как составить план проекта.

Общие сведения
Дополнительные окна
Окна вставки и поиска
Консультант и система помощи

Основы создания проектов
Анализ
Приложение
Приложение 2

Устройства на операционных усилителях

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

Источники тока, управляемые напряжением
Усилитель мощности - ликбез
Стереофонический усилитель
Расчет элементов ВЧ усилительных каскадов на биполярных транзисторах

Усилители мощности ВЧ
В стиле ретро
Усилитель мощности импульсный
Транзисторный усилитель мощностью 6 Вт
Ламповые усилители мощностью 1 и 3 Вт

Ламповый усилитель мощностью 12 Вт
Транзисторный стереофонический усилитель мощностью 2 Вт
Усилитель воспроизведения
Ламповый усилитель мощностью 10 Вт
УМЗЧ с глубокой ООС

Усилитель на транзисторах мощностью 1,5 Вт
Трансформаторные усилители на транзисторах мощностью 1 и 10 Вт
Универсальный усилитель для магнитофона
Усилитель записи кассетного магнитофона
Доработка усилителя воспроизведения магнитофона Вега-МП122С

Однотактный, на 6П3С (макет усилителя класса SE)
Однотактный ламповый..., возвращаясь к напечатанному
Усилитель мощности на TDA7386
Усилитель воспроизведения 3

Усилитель воспроизведения 2
Усилитель мощности на TDA-1558
Усилитель мощности с балансным дифференциальным входным каскадом
Цифровой 4-х канальный регулятор для усилителя на TDA7313

Анализ криптографических протоколов

До сих пор предполагалось, что участники протокола честно выполняют протокол (нарушителей нет), а противник пассивен, т.е. он только перехватывает все сообщения в канале связи, пытаясь извлечь из них максимум информации, но не вмешиваясь в протокол. Такой противник является четвертым неявным участником протокола, состояние которого также должно учитываться и анализироваться с точки зрения безопасности протокола.
Если же противник активен, то он становится четвертым несанкционированным участником протокола, скрытым для санкционированных участников А, В и S. Такой противник не обязан соблюдать протокол. Он должен только поддерживать видимость нормального хода протокола. Противник Е в протоколе может попеременно играть роль А, В и S (соответствующие обозначения: Ea, Eb, Es). Он может подставлять вместо сообщений, передаваемых санкционированными участниками, сообщения, переданные в предыдущих запусках протокола, в текущем запуске, или, наконец, он может инициировать от имени А или В новый запуск протокола до окончания текущего и воспользоваться сообщениями этого параллельного протокола.  Еще более сильным противником является такой, который обладает ключом (ключами), действующим или выведенным из действия, причем участники протокола об этом могут не знать, по крайней мере, в течение некоторого времени.

Алгоритмы симметричного шифрования
Алгоритмы шифрования
Анализ криптографических протоколов
Взлом криптоалгоритмов
Криптосистема RSA
Однонаправленная функция с секретом на базе КАМСИ
Обзор алгоритмов MOLAP

Введение в язык Си++

C++ - универсальный язык программирования, задуманный так, чтобы сделать программирование более приятным для серьезного программиста. За исключением второстепенных деталей C++ является надмножеством языка программирования C. Помимо возможностей, которые дает C, C++ предоставляет гибкие и эффективные средства определения новых типов. Используя определения новых типов, точно отвечающих концепциям приложения, программист может разделять разрабатываемую программу на легко поддающиеся контролю части. Такой метод построения программ часто называют абстракцией данных. Информация о типах содержится в некоторых объектах типов, определенных пользователем. Такие объекты просты и надежны в использовании в тех ситуациях, когда их тип нельзя установить на стадии компиляции. Программирование с применением таких объектов часто называют объектно-ориентированным. При правильном использовании этот метод дает более короткие, проще понимаемые и легче контролируемые программы.
Ключевым понятием C++ является класс. Класс - это тип, определяемый пользователем. Классы обеспечивают скрытие данных, гарантированную инициализацию данных, неявное преобразование типов для типов, определенных пользователем, динамическое задание типа, контролируемое пользователем управление памятью и механизмы перегрузки операций. C++ предоставляет гораздо лучшие, чем в C, средства выражения модульности программы и проверки типов. В языке есть также усовершенствования, не связанные непосредственно с классами, включающие в себя символические константы, inline- подстановку функций, параметры функции по умолчанию, перегруженные имена функций, операции управления свободной памятью и ссылочный тип. В C++ сохранены возможности языка C по работе с основными объектами аппаратного обеспечения (биты, байты, слова, адреса и т.п.). Это позволяет весьма эффективно реализовывать типы, определяемые пользователем. C++ и его стандартные библиотеки спроектированы так, чтобы обеспечивать переносимость. Имеющаяся на текущий момент реализация языка будет идти в большинстве систем, поддерживающих C. Из C++ программ можно использовать C библиотеки, и с C++ можно использовать большую часть инструментальных средств, поддерживающих программирование на C.

Размышления о программировании на C++
Вложенные Классы
Видимость имен членов
Побитовые логические операции
Свободная память
Создание вашей первой программы

Уменьшение количества операторов
Оператор else
Следите за ошибками переполнения

Bluetooth технические требования, практическая реализация

Настоящая книга посвящена одной из наиболее динамично развивающихся бес­проводных технологий связи, получившей широкую известность в мире как Bluetooth технология. Книга адресована самому разнообразному кругу читателей: «обывателям», желающим понять «проблему», инженерам-проектировщикам, ко­торые найдут в книге конкретные технические характеристики и алгоритмы рабо­ты или будут ориентированы к интересующим их разделам технических требова­ний, а также инженерам-интеграторам, которые используют технологию Bluetooth для создания конкретных технических систем.

Защита информации
Радио и рабочие группы по совместимости

Приемы раскрутки WEB-сайтов

Документ содержит описания различных приемов и реставрированные листинги программ, используемых для увеличения посещаемости web-сайтов и могущих представлять интерес для web-дизайнеров, администраторов web-сайтов, web-каталогов и поисковых систем.

Продолжение
Продвижение Web-узла через регистрацию в поисковых системах Интернета

C++ Builder - вопросы программирования

Интерес к программированию постоянно растет. Это связано с развитием и внедрением в повседневную жизнь информационных технологий. Если человек имеет дело с компьютером, то рано или поздно у него возникает желание, а иногда и необходимость, научиться программировать. Среди пользователей персональных компьютеров в настоящее время наиболее популярна операционная система Windows, и естественно, что тот, кто хочет программировать, хочет и писать программы, которые будут работать в Windows.
Несколько лет назад рядовому программисту оставалось только мечтать о создании своих собственных программ, работающих в Windows. Единственным средством разработки был Borland C++ for Windows, явно ориентированный на профессионалов, обладающих серьезными знаниями и опытом. Бурное развитие вычислительной техники, потребность в эффективных средствах разработки программного обеспечения привели к появлению на рынке целого ряда систем программирования, ориентированных на так называемую "быструю разработку", среди которых особо следует отметить Microsoft Visual Basic и Borland Delphi. В основе систем быстрой разработки (RAD-систем, Rapid Application Development — среда быстрой разработки приложений) лежит технология визуального проектирования и событийного программирования, суть которой заключается в том, что среда разработки берет на себя большую часть работы по генерации кода программы, оставляя программисту работу по конструированию диалоговых окон и написанию функций обработки событий. Производительность программиста при использовании RAD систем фантастическая!
Успех и популярность Delphi вызвал желание фирмы Borland распространить методы быстрой разработки на область профессионального программирования, что и привело к появлению Borland C++ Builder.


Начало работы
Демонстрация возможностей C++ Builder
Работа с графикой
Компонент Animate
База данных и СУБД

Выбор базового класса
Ввод/вывод
Создание справочной системы
Программа InstallShield Express
Система проверки знаний
Приложение

Освобождение голоса

Вот упрощенная схема, демонстрирующая механизм работы голоса:
1. Соответствующий импульс попадает в двигательные части головного мозга.
2. Импульс побуждает тело совершить вдох и выдох.
3. В процессе дыхания голосовые складки соприкасаются, coздавая колебания.
4. Колебания вызывают вибрации в дыхательном потоке.
5. Вибрации усиливаются резонаторами.
6. Звук в результате артикуляции губ и языка формируется в слова.

Как работает голос
Комплекс упражнений

Сети хранения данных

Современные информационные системы можно представить в виде совокупности трех основных компонентов: систем хранения данных, серверов и вспомогательных систем ввода/вывода. Если еще несколько лет назад столь строгое разделение выглядело экзотикой, то сегодня это уже привычное положение вещей и даже необходимость. В самом деле, нагрузка в средней информационной системе вполне позволяла объединить сервер и систему хранения данных в единое целое, хотя такая точка зрения уместна лишь "с высоты прожитых лет".
Иначе говоря, сначала не было и речи, чтобы разделить такие, казалось бы, неразрывно связанные блоки, как собственно сервер (процессор, чипсет, память и вся соответствующая серверная обвязка) и его дисковый массив. Понимание оправданности разделения этих объектов на мейнстрим-уровне пришло позже, когда объемы данных возросли в геометрической прогрессии и продолжают расти. В принципе, размещение дискового массива внутри сервера вполне оправдано в некоторых ситуациях и сегодня, однако отрицать устойчивую тенденцию четкого разделения этих узлов было бы неправильно.

Виртуальная консолидация данных
ILM: еще одна дорогая игрушка?
NAS для вас
Особенности оптических систем связи
Оптосоединение 2х компьютеров на лазерных указках

Основы экологического права

По мнению ученых, именно современный этап развития науки экологического права ставит задачу детального исследования истории российского природоохранного законодательства. Но к настоящему времени наиболее полно изученным оказался законодательный массив только XVIII-XIX вв. Историки права, как показывает практика, чаще всего выбирали для своих работ в качестве стартовой точки период петровских преобразований, в ходе которых определилось значение природоресурсной базы в экономическом развитии страны. Более ранний период истории развития природоохранного законодательства был охарактеризован лишь в самых общих чертах состояния правовой защиты природы, считают М.Б. Булгаков и А.А. Ялбулганов.[1] Булгаков М.Б., Ялбулганов А.А. Природоохранные акты: от «Русской правды» до петровских времен // Государство и право. 1996. №2. По результатам проведенного исследования была установлена преемственность природоохранного законодательства от обычного права и народных традиций, что является характерным для правовой системы в целом.

История развития природоохранного законодательства
Принципы управления природопользованием и охраной окружающей среды
Охрана окружающей среды и обеспечение экологической безопасности (1)

Windows для профессионалов

Microsoft Windows - сложная операционная система Она включает в себя столько всего и делает так много, что одному человеку просто не под силу полностью разобраться в этой системе. Более того, из-за такой сложности и комплексности Windows трудно решить, с чего начать ее изучение. Лично я всегда начинаю с самого низкого уровня, стремясь получить четкое представление о базовых сервисах операционной системы. Разобравшись в основах, дальше двигаться проще. С этого момента я шаг за шагом, по мере необходимости, изучаю сервисы более высокого уровня, построенные именно па этом базисе.
Например, вопросы, относящиеся к компонентной модели объектов (Component Object Model, СОМ), в моей книге прямо не затрагиваются. Но СОМ - это архитектура, где используются процессы, потоки, механизмы управления памятью, DLL, локальная память потоков, Unicode и многое другое. Если Вы знаете, как устроены и работают эти фундаментальные сервисы операционной системы, то для освоения СОМ достаточно понять, как они применяются в этой архитектуре. Мне очень жаль тех, кто пытается перепрыгнуть через вес это и сразу же взяться за изучение архитектуры СОМ Впереди у них долгий и тернистый путь; в их знаниях неизбежны пробелы, которые непременно будут мешать им в работе.

Сегодняшние Windows-платформы
Некоторые соображения по библиотеке С/С++
Программа-пример Counter
Создание ЕХЕ-модуля
Алгоритм выборки сообщений из очереди потока
Приостановка и возобновление процессов
Резервирование региона с одновременной передачей физической памяти
Уведомление DLL_PROCESS_ATTACH
Windows на одной дискете