- •Лабораторная работа n 1 основы языка программирования пролог. Изучение среды turbo prolog.
- •Запустить Turbo Prolog
- •1.1 Основные понятия языка Турбо Пролог.
- •1.1.2. Факты
- •1.1. 3 . Запросы
- •1.2. Разделы программы на языке Турбо Пролог.
- •2. Среда turbo prolog 2.0.
- •2.1. Интерфейс среды Турбо Пролог 2.0.
- •2.1 Элементы главного меню и их функции:
- •2.3 Основные операции в среде Турбо Пролог.
- •2. 4 . Трассировка.
- •Лабораторная работа n 2 понятие правила и рекурсии. Встроенные предикаты.
- •1. Правила
- •1.1. Дерево вывода.
- •2. Рекурсия
- •3.Использование встроенных предикатов.
- •4. Задание для лабораторной работы
- •4.1. Варианты заданий
- •5. Контрольные вопросы.
- •Лабораторная работа № 3 интегрированная среда разработки visual prolog
- •1. Создание нового проекта.
- •2. Создание формы.
- •3. Работа с меню
- •4. Создание обработчиков нажатия на кнопку.
- •5. Задание для лабораторной работы
- •6. Контрольные вопросы.
- •2. Преобразование данных
- •3. Арифметические действия
- •Лабораторная работа № 5 построение нейросетевой экспертной системы
- •5.1. Цель работы
- •5.2. Методические указания
- •5.2.1. Постановка задачи
- •5.2.2. Критерии оценки
- •5.2.3. Ввод анализируемых данных
- •5.2.3.1. Использование файла запуска фактов
- •5.2.3.2. Использование протокола dde
- •5.3. Порядок выполнения работы
- •Лабораторная работа №6 Архитектура процессора NeuroMatrix ® nm 6403 и его функциональные возможности
- •6.3.2. Внешний интерфейс процессора
- •6.3.3. Общее описание внутренней структуры процессора
- •6.3.3.1. Описание основных элементов скалярного процессора
- •6.3.3.2. Описание основных элементов векторного процессора
- •6.3.4. Основные вычислительные блоки векторного процессора
- •6.3.4.1. Взвешенное суммирование
- •6.3.4.2. Выполнение операций на векторном алу
- •6.3.4.3 Операция маскирования
- •6.3.4.4 Обработка данных функцией активации
- •6.3.4.5 Циклический сдвиг вправо операнда х при взвешенном суммировании
- •6.3.4.6 Порядок выполнения преобразований над данными на вп
- •6.4. Описание и порядок пользования программой nmCalculator запустить nmCalculator
- •6.4.1 Общие сведения о программе
- •6.4.2 Формирование векторной команды
- •6.4.3 Разбиение рабочей матрицы и запись весовых коэффициентов
- •Контрольные вопросы
- •Лабораторная работа № 7 Программирование процессора NeuroMatrix ® nm 6403
- •7.2.3 Типы скалярных команд
- •7.2.4 Типы векторных команд
- •7.2.5 Регистры процессора
- •7.2.5.1 Основные регистры
- •7.2.5.2 Регистровые пары
- •7.3. Примеры простейших программ
- •7.4. Порядок выполнения работы
7.2.3 Типы скалярных команд
Скалярная инструкция процессора состоит из двух частей, в каждой из которых могут встречаться только определенные типы скалярных команд. Далее в таблице указано, какие группы скалярных команд могут быть записаны в левой, а какие в правой части скалярной инструкции.
Табл. 1-1 Положение различных типов команд в скалярной инструкции.
Левая часть скалярной инструкции |
Правая часть скалярной инструкции |
|
|
В скалярной команде любой тип операции из левой колонки таблицы может быть совмещен с любым типом из правой. Однако не могут встретиться два типа операций из одной колонки.
В качестве примера скалярной инструкции, содержащей левую и правую части, может быть рассмотрена инструкция:
gr4 = [ar0++] with gr0 = gr1 and not gr2;
В её левой части происходит инициализация регистра gr4 содержимым ячейки па-мяти, на которую указывает регистр ar0 с постинкрементацией адреса. В правой части вы-полняется трехоперандная логическая операция. Содержимое регистров gr1 и gr2 подвергается побитовой логической операции and not, а результат записывается в регистр gr0.
7.2.4 Типы векторных команд
Векторная инструкция, также как и скалярная, состоит из левой и правой частей. В левой части используются операции адресации, а в правой – большинство векторных команд. Для большей наглядности ниже приведена таблица, в которой содержится информация о том, какие типы векторных команд могут располагаться в левой, а какие в правой части векторной инструкции.
Табл. 1-2 Положение различных типов команд в векторной инструкции.
Левая часть векторной инструкции
|
Правая часть векторной инструкции |
|
- взвешенное суммирование (матричное умножение); - маскирование; - арифметические операции; логические операции; - операция циклического сдвига; - операции активации операндов; - выгрузка управляющих векторных регистров; - пустая операция. |
Пример векторной инструкции с левой и правой частями:
rep 32 ram = [ar0++] with vsum , data, afifo ;
Ключевое слово with разделяет левую и правую части. Счетчик повторений rep число присутствует в каждой векторной команде за исключением стоящих отдельно ftw и wtw. В левой части векторной команды выполняется операция загрузки данных во внутренний буфер ram векторного процессора, в правой данные проходящие в ram по шине данных дублируются и направляются в рабочую матрицу для выполнения взвешенного суммирования.