На этой странице можно скачать этот файл совершенно бесплатно и без регистрации и без отправки смс, а также без различного рода ограничений.
Скачивайте и учитесь, надеемся, наш сайт помог вам "погрызть гранит науки"
Караваев А.С. Введение в программирование аппаратных средств на языке Си
Учебно-методическое пособие для студентов факультета нано - и биомедицинских технологий Саратовского госуниверситета. Саратов, 2009. 104 стр.
Учебно-методическое пособие оформлено в виде конспекта лекций. Пособие ориентировано на студентов и инженерно-технических работников, знакомых с языком Pascal и преследующих цель быстрого освоения основ популярного языка Си для программирования микропроцессоров ПК, устройств сопряжения, микроконтроллеров, цифровых сигнальных процессоров и периферийных устройств. Основной упор сделан на вопросах, специфических для программирования аппаратных ресурсов: адресация памяти, ссылки и динамически создаваемые структуры данных, работа с отдельными битами и т.п. Затронуты некоторые теоретические вопросы взаимодействия АЛУ с периферийными устройствами, методика организации типичных структур данных (очередь, кольцевой буфер ввода, стек, связанный список). В последних лекциях дается краткое введение в язык ассемблера и затрагиваются вопросы совместного использования Си и ассемблера, в частности, встроенного ассемблера. Учебное пособие снабжено значительным количеством иллюстраций, таблиц, схем и примеров программ.
Содержание конспекта лекций: Введение. Простейшая программа на языке Си Технические замечания. Языки программирования. Язык С. Рекомендуемая литература. Структура программы на языке С. Комментарии. Заголовочные файлы. Объявление переменных. Точка входа в программу, составной оператор. Вывод на экран текстовых сообщений. Общие замечания, хороший стиль программирования. Интегрированная среда разработки Borland C++ 3.1. Типы данных. Интегрированная среда разработки Borland C++. Скалярные типы данных С. Преобразования типов. Массивы. Пользовательские типы данных. Структуры. Перечисления, объединения, битовые поля. Основные операторы и конструкции языка. Арифметические операторы. Операторы инкремента и декремента. Операторы условия if/else, switch. Логические операции. Циклы. Безусловный переход. Побитовые операторы. Доступ к отдельным битам. Адресация памяти и использование указателей. Двоичная система счисления, бит, байт, слово. Использование различных систем счисления. Память ЭВМ. Адресация и распределение памяти ЭВМ. Использование ОП прикладной программой. Объявление и использование указателей. Разыменование указателей на структуры. Арифметические действия с указателями. Указатели и массивы. Интерфейс с пользователем, работа с файлами, строки. Форматированный вывод с помощью printf. Ввод с помощью scanf. Потоки. Работа с текстовыми файлами. Файлы произвольного доступа. Обработка символов на ЭВМ. Операции со строками в C. Макросы, функции, библиотеки подпрограмм. Подпрограммы, библиотеки подпрограмм. Объявление функции в C. Вызов функций. Константы и макросы, директива #define. Область видимости переменных. Прототипы функций, библиотеки, рекурсия. Создание процедур. Функция main. Заголовочные файлы, директива #include. Стандартная библиотека C. Указатели на функции. Передача указателя на функцию, вызов по ссылке. Организация обмена и хранения данных. Динамические массивы. Стек. Очередь, сбор данных в многозадачной ОС. Кольцевой буфер, линия задержки. Связанный список. Введение в организацию работы ЭВМ и язык ассемблера. Язык ассемблера. Структура ЭВМ. Регистры процессора. Сегментная адресация памяти. Подготовка и создание программы на языке ассемблера. Работа видеоадаптера ПЭВМ в текстовом режиме. Простейшая программа на языке ассемблера. Программирование на нескольких языках, встроенный ассемблер. Программа на ассемблере с сегментами данных и стека. Модели памяти. Программирование на нескольких языках. Использование встроенного ассемблера.
Приложение Сокращения и аббревиатуры. Практические задания для самоконтроля. Рекомендуемая литература.