Е. Миркес - Учебное пособие по курсу «Нейроинформатика»
- Название:Учебное пособие по курсу «Нейроинформатика»
- Автор:
- Жанр:
- Издательство:КРАСНОЯРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
- Год:2002
- Город:Красноярск
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Е. Миркес - Учебное пособие по курсу «Нейроинформатика» краткое содержание
Данное учебное пособие подготовлено на основе курса лекций по дисциплине «Нейроинформатика», читавшегося с 1994 года на факультете Информатики и вычислительной техники Красноярского государственного технического университета.
Несколько слов о структуре пособия. Далее во введении приведены учебный план по данному курсу, задания на лабораторные работы. Следующие главы содержат одну или несколько лекций. Материал, приведенный в главах, несколько шире того, что обычно дается на лекциях. В приложения вынесены описания программ, используемых в данном курсе (Clab и Нейроучебник), и проект стандарта нейрокомпьютера, включающий в себя два уровня — уровень запросов компонентов универсального нейрокомпьютера и уровень языков описания отдельных компонентов нейрокомпьютера.
Данное пособие является электронным и включает в себя программы, необходимые для выполнения лабораторных работ.
Учебное пособие по курсу «Нейроинформатика» - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
В прямых квадратных скобках приводятся необязательные части синтаксических конструкций. Например предложение
<���Целое число>::= [—] <���Положительное целое число>
означает, что целым числом является положительное целое число (знак минус, стоящий в квадратных скобках, опущен как необязательный) или положительное целое число, перед которым стоит знак минус (знак минус, стоящий в квадратных скобках, задействован). Отметим, что квадратные скобки, набранные курсивом, являются терминальными символами.
Набор из нескольких синтаксических конструкций, разделенных символом «|» и заключенных в прямые фигурные скобки задают конструкцию выбора одной и только одной из перечисленных в фигурных скобках конструкций. Например, предложение
<���Буква>::= { A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z }
означает, что понятие буква является одной из заглавных букв латинского алфавита. Отметим, что фигурные скобки, набранные курсивом, являются терминальными символами.
В целях сокращения описания в тех случаях, когда БНФ описание понятия сложно, а неформальное описание просто и однозначно, в БНФ описание включаются фрагменты неформального описания таких понятий.
Кроме того в данную модификацию БНФ включены нетерминальные символы с параметрами. В теле нетерминального символа параметры набраны полужирным курсивом. В качестве примера приведем набор предложений, описывающих формальные аргументы:
<���Список формальных аргументов>::= <���Формальный аргумент> [; <���Список формальных аргументов>]
<���Формальный аргумент>::= <���Список имен аргументов>:<���Скалярный тип>
<���Список имен аргументов>::= <���Имя аргумента> [,<���Список имен аргументов>]
<���Имя аргумента>::= <���Идентификатор>
<���Аргумент типа Тип > — одно из следующих понятий:
имя аргумента, который при описании формальных аргументов имел тип Тип
имя элемента аргумента-массива, если элементы массива имеют тип Тип
результат приведения произвольного аргумента или элемента аргумента-массива к типу Тип.
В этом фрагменте содержится предложение, раскрывающее понятие <���Аргумент типа Тип >, являющееся нетерминальным символом с параметром. Из последнего предложения легко понять, что представляет собой понятие <���Аргумент типа Тип >. Для описания этого понятия в соответствии с требованиями стандартной БНФ пришлось бы описывать отдельно следующие понятия: <���Аргумент типа long>, <���Аргумент типа real>, <���Аргумент типа integer>, <���Аргумент типа color>, <���Аргумент типа logic>, <���Аргумент типа string>, <���Аргумент типа prealarray>, <���Аргумент типа pintegerarray>, <���Аргумент типа plongarray>, <���Аргумент типа plogicarray>, <���Аргумент типа pstring>, <���Аргумент типа visual>, <���Аргумент типа pointer>, <���Аргумент типа functype>. Кроме того, пришлось бы отказаться от простой и понятной конструкции описания формальных аргументов. Ниже приведена часть конструкции описания формальных аргументов, которую пришлось бы включить в БНФ. В данном фрагменте приведена расшифровка только одного понятия — <���Аргумент типа long>. Остальные нераскрытые понятия описываются аналогично. Понятия <���Идентификатор> и <���Номер элемента> считаются раскрытыми ранее.
<���Список формальных аргументов>::= <���Формальный аргумент> [; <���Список формальных аргументов>]
<���Формальный аргумент>::= {<���Формальный аргумент типа Long> | <���Формальный аргумент типа Real> | <���Формальный аргумент типа Integer> | <���Формальный аргумент типа Color> | <���Формальный аргумент типа Logic> | <���Формальный аргумент типа String> | <���Формальный аргумент типа PRealArray> | <���Формальный аргумент типа PIntegerArray> | <���Формальный аргумент типа PLongArray> | <���Формальный аргумент типа PLogicArray> | <���Формальный аргумент типа PString> | <���Формальный аргумент типа Visual> | <���Формальный аргумент типа Pointer> | <���Формальный аргумент типа FuncType>}
<���Формальный аргумент типа Long>::= <���Список имен аргументов типа Long>: Long;
<���Список имен аргументов типа Long>::= <���Имя аргумента типа Long> [,<���Список имен аргументов типа Long>]
<���Имя аргумента типа Long>::= <���Идентификатор>
<���Аргумент типа Long>::= {<���Имя аргумента типа Long> | <���Имя аргумента типа PLongArray> ^[ <���Номер элемента> ] | TLong ( <���Имя произвольного аргумента> ) }
<���Имя произвольного аргумента>::= <���Имя аргумента типа Long>, <���Имя аргумента типа Real>, <���Имя аргумента типа Integer>, <���Имя аргумента типа Color>, <���Имя аргумента типа Logic>, <���Имя аргумента типа String>, <���Имя аргумента типа PRealArray>, <���Имя аргумента типа PIntegerArray>, <���Имя аргумента типа PLongArray>, <���Имя аргумента типа PLogicArray>, <���Имя аргумента типа PString>, <���Имя аргумента типа Visual>, <���Имя аргумента типа Pointer>, <���Имя аргумента типа FuncType>
Третье четвертое и пятое предложения данного фрагмента пришлось бы повторить для каждого из остальных тринадцати типов аргументов. Поскольку приведенные в книге БНФ описания языков призваны задать и объяснить синтаксис языка, а не служить исходным кодом компилятора компиляторов, автор счел возможным отступить от канонов БНФ, тем более, что для профессионала в области языков программирования не составит большого труда заменить неформальные конструкции на точные формальные фрагменты.
В данном разделе приведено описание общего подмножества языков описания компонентов. В некоторых случаях, когда БНФ описание понятия сложно, а неформальное описание просто и однозначно, в БНФ описание включаются фрагменты неформального описания таких понятий.
Список синтаксических конструкций общего назначения:
<���Идентификатор>::= <���Буква> [<���Символьная строка>]
<���Буква>::= { a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x | y | z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z }
Интервал:
Закладка: