Программирование на Ассемблере


              

Программирование на Ассемблере


Основные определения
Цель курса.
Характеристика языков системного программирования
История развития ассемблера. Характеристика машинного языка
Структура 4-х адресной команды
Структура 2-х адресной команды
Структура 1 адресной команды.
Структура безадресных команд
Сравнительный анализ команд с различной адресностью для современных процессоров
Пример программирования в машинных кодах.

Система команд
Распределение памяти
Программа вычисления
Характеристика языков ассемблерного типа
Пример программы на ассемблере для 16 битного приложения (DOS приложение)
Пример программы на ассемблере для 32 - битного приложения
ВВЕДЕНИЕ В АРХИТЕКТУРУ INTEL ПРОЦЕССОРОВ
Арифметико-логический блок
Арифметико-логический блок - 2
Прогнозирование переходов

Память
Регистровая память.
Кэш память
Блок с плавающей точкой
Особенности MMX процессоров
Перспективы разработки процессоров
Классификация простейших конструкций
Константы
Целые двоичные данные
Целые десятичные числа

Константы с плавающей точкой
Символьные и строковые константы
Однобайтовая кодировка
Двухбайтовая кодировка
Идентификаторы
Адреса
Внутреннее представление адреса для реального режима
Внутреннее представление адреса для защищенного режима
Внешнее представление адресов.
Внешнее представление адресов. - 2

Выражения
Выражения - 2
Классификация операторов
Директивы для определения констант
Директива EQU
Директива =
Директивы выделения памяти
Классификация команд
Команда MOV
Использование данных разной длины

Команды обмена
Команды пересылки для работы с адресами
Использование команды lea для арифметических вычислений
Особенности команд пересылки для работы со стеком
Использование команд mov
Использование специальных команд
Классификация арифметических команд
Правила использования арифметических команд
Основные арифметические команды
Специальные команды

Организация вычислений с многократной точностью
Организация вычислений с многократной точностью - 2
Дополнительные арифметические команды
Команды безусловного перехода
Коды условий
Команды условного перехода
Команды условного перехода - 2
Специальные команды
Организация вложенных циклов
Монотонное изменение индекса

Монотонное изменение индекса - 2
Немонотонное изменение параметра цикла
Использование команд для работы с блоками
Использование команд для работы с блоками - 2
Задание двухмерного массива
Монотонное изменение индекса
Метод связанных индексов
Метод связанных индексов - 2
Использование 2-х мерного массива при немонотонном изменении индекса
Многомерные массивы

Использование метода связных индексов для многомерных массивов
Использование метода приведенных индексов для многомерных массивов
Структуры
Задание типа структуры
Выделение памяти под структуру
Инициализация полей структуры
Особенности инициализации строк и массивов
Обращение к полям структуры
Обращение к полям структуры - 2
Объединения

Особенности инициализации полей объединения
Перечисления
Основные команды для работы с битами
Основные команды для работы с битами - 2
Классификация команд
Кодировка команд сдвига
Общий вид команд сдвига
Примеры использования команд сдвига.
Дополнительные команды
Группа команд: проверить и изменить

Команды длинного сдвига
Определение типа битовой структуры
Выделение памяти под битовую структуру
Особенности использования битовых структур
Пример использования битовой структуры
Типы программ
Одномодульные программы
Использование функций
Классификация параметров. Способы передачи параметров процедурам
Передача параметров через регистры

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

Передача в списке параметров функций
Составление функций с переменным списком параметров
Составление рекурсивных функций на ассемблере
Особенности использования внешних функций
Особенности использования внешних функций - 2
Особенности использования внешних функций - 3
Использование общих областей памяти
Реентерабельное программирование
Использование локальных областей памяти
Особенности использования команд ENTER и LEAVE

Директива ARG
Директива LOCAL
Стыковка с языками высокого уровня
Вставка в Си команд на ассемблере
Вставка в Си команд на ассемблере - 2
Использование отдельных функций на ассемблере
Использование отдельных функций на ассемблере - 2
Особенности создания функций для включения их в DLL
Особенности использования ассемблерных функций в качестве функций – членов классов
Особенности использования ассемблерных функций в качестве функций – членов классов - 2

Недостатки функций
Макросы
Простейшие макросы
Основные определения
Макроопределение (м/о)
Макрокоманда (м/к)
Макрорасширение (м/р)
Правила записи параметров
Правила записи параметров - 2
Определение внутренних меток

Использование фактических параметров со специальными знаками
Вложенные и рекурсивные макросы
Обзор средств условной трансляции
Директивы условной трансляции
Формирование сообщений об ошибках
Безусловное повторение
Директива IRP
Директива IRPC
Директива WHILE
Обзор средств ввода-вывода



Создание динамических Web узлов - перейти
Анимация в Web - перейти
Создание Webстраниц с помощью Flash - перейти
Создание анимации для Webузла JCT - перейти
Создание элементов навигации - перейти
Этапы - перейти
Dreamweaver MX - создание страниц - перейти
Связь с ColdFusion MX - перейти

Оптимизация рисунков и пакет Studio MX - перейти
Оптимизация узла и программ - перейти
Выпускаем Webузел в свет - перейти
Энциклопедия машиностроения - Материалы - перейти
Алюминий и сплавы ГОСТ 4784-74 - перейти
Алюминий первичный ГОСТ 11069-74 - перейти
Баббиты оловянные ГОСТ 1320-74 - перейти