» » » C. Бочков - Язык программирования Си для персонального компьютера


Авторские права

C. Бочков - Язык программирования Си для персонального компьютера

Здесь можно скачать бесплатно "C. Бочков - Язык программирования Си для персонального компьютера" в формате fb2, epub, txt, doc, pdf. Жанр: Программирование, издательство СП "Диалог", Радио и связь, год 1990. Так же Вы можете читать книгу онлайн без регистрации и SMS на сайте LibFox.Ru (ЛибФокс) или прочесть описание и ознакомиться с отзывами.
C. Бочков - Язык программирования Си для персонального компьютера
Рейтинг:
Название:
Язык программирования Си для персонального компьютера
Автор:
Издательство:
СП "Диалог", Радио и связь
Год:
1990
ISBN:
5-256-00974-5
Скачать:

99Пожалуйста дождитесь своей очереди, идёт подготовка вашей ссылки для скачивания...

Скачивание начинается... Если скачивание не началось автоматически, пожалуйста нажмите на эту ссылку.

Вы автор?
Жалоба
Все книги на сайте размещаются его пользователями. Приносим свои глубочайшие извинения, если Ваша книга была опубликована без Вашего на то согласия.
Напишите нам, и мы в срочном порядке примем меры.

Как получить книгу?
Оплатили, но не знаете что делать дальше? Инструкция.

Описание книги "Язык программирования Си для персонального компьютера"

Описание и краткое содержание "Язык программирования Си для персонального компьютера" читать бесплатно онлайн.



Книга содержит полное описание наиболее распространенных реализаций языка программирования Си на 16-разрядных микроЭВМ, совместимых с IBM PC. Приведено описание стандартных библиотек языка.

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






Примечание. Все функции в стандартных включаемых файлах (например, stdio.h) объявлены с модификатором cdecl. Это позволяет использовать библиотеки стандартных функций даже в тех программах, которые компилируются с упомянутой выше опцией компиляции.

Примечание. Главная функция программы (main) должна быть всегда объявлена с модификатором cdecl, поскольку модуль поддержки выполнения передает ей управление, используя вызывающую последовательность языка Си.

Пример: см. пример 3 в разделе 3.3.3.4.

Модификаторы near, far, huge

Эти модификаторы оказывают воздействие на работу с адресами объектов.

Компилятор языка Си позволяет использовать при компиляции одну из нескольких моделей памяти. Виды моделей памяти и методы их применения рассмотрены в разделе 8 "Модели памяти".

Модель, которую вы используете, определяет размещение в оперативной памяти вашей программы и данных, а также внутренний формат указателей. Однако при использовании какой-либо модели памяти можно объявить указатель с форматом, отличным от действующего по умолчанию. Это делается с помощью модификаторов near, far и huge.

Указатель типа near — 16-битовый; для определения адреса объекта он использует смещение относительно текущего содержимого сегментного регистра. Для указателя типа near доступная память ограничена размером текущего 64-килобайтного сегмента данных.

Указатель типа far — 32-битовый; он содержит как адрес сегмента, так и смещение. При использовании указателей типа far допустимы обращения к памяти в пределах 1-мегабайтного адресного пространства процессора Intel 8086/8088, однако значение указателя типа far циклически изменяется в пределах одного 64-килобайтного сегмента.

Указатель типа huge — 32-битовый; он также содержит адрес сегмента и смещение. Значение указателя типа huge может быть изменено в пределах всего 1-мегабайтного адресного пространства. В СП ТС указатель типа huge всегда хранится в нормализованном формате. Это имеет следующие следствия:

—операции отношения ==, !=, <, >, <=, >= выполняются корректно и предсказуемо над указателями типа huge, но не над указателями типа far;

—при использовании указателей типа huge требуется дополнительное время, т. к. программы нормализации должны вызываться при выполнении любой арифметической операции над этими указателями. Объем кода программы также возрастает.

В СП MSC модификатор huge применяется только к массивам, размер которых превышает 64 К. В СП ТС недопустимы массивы больше 64 К, а модификатор huge применяется к функциям и указателям для спецификации того, что адрес функции или указуемого объекта имеет тип huge.

Для вызова функции типа near используются машинные инструкции ближнего вызова, для типов far и huge — дальнего.

Примеры.

/* пример 1 */

int huge database [65000];

/* пример 2 */

char fаг *x;

/* пример 3 */

double near cdecl calc(double, double);

double cdecl near calc(double, double);

/* пример 4 */

char far pascal initlist[INITSIZE];

char far nextchar, far *prevchar, far *currentchar;

В первом примере объявляется массив с именем database, содержащий 65000 элементов типа int. Поскольку размер массива превышает 64 Кбайта, его описатель должен быть модифицирован специальным ключевым словом huge.

Во втором примере специальное ключевое слово far модифицирует расположенную справа от него звездочку, делая х указателем на far указатель на значение типа char. Это объявление можно для ясности записать и так:

char *(far *х);

В примере 3 показано два эквивалентных объявления. В них объявляется calc как функция с модификаторами near и cdecl.

В примере 4 также представлены два объявления. Первое объявляет массив типа char с именем initiist и модификаторами far и pascal. Модификатор pascal указывает на то, что имя данного массива используется не только в программе на языке Си, но и в программе на языке Паскаль (или другом языке программирования с подобными правилами написания имен внешних переменных). Модификатор far указывает на то, что для доступа к элементам массива долины использоваться 32-битовые адреса.

Второе объявление объявляет три указателя на far значения типа char с именами nextchar, prevchar и currentchar. Эти указатели могут быть, в частности, использованы для хранения адресов элементов массива initlist. Обратите внимание на то, что специальное ключевое слово far должно быть повторено перед каждым описателем.

Модификатор interrupt

Модификатор interrupt предназначен для объявления функций, работающих с векторами прерываний процессора 8086/8088. Для функции типа interrupt при компиляции генерируется дополнительный код в точке входа и выхода из функции, для сохранения и восстановления регистров микропроцессора АХ, ВХ, СХ, DX, SI, DI, ES и DS. Остальные регистры — ВР, SP, SS, CS и IP сохраняются всегда как часть вызывающей последовательности языка Си или часть самой системы обработки прерывания.

См. пример в разделе 3.3.3.1.

Функции прерываний следует объявлять с типом возвращаемого значения void.

Функции прерываний поддерживаются для всех моделей памяти. В СП MSC, в малой и средней модели в регистр DS заносится при входе в функцию адрес сегмента данных всей программы, а в компактной, большой и максимальной модели в регистр DS заносится адрес сегмента данных программного модуля. В СП ТС только в максимальной модели в регистр DS заносится адрес сегмента данных программного модуля, а в остальных моделях—адрес сегмента данных всей программы.

Модификатор interrupt не может использоваться совместно с модификаторами near, far, huge.

Объявление переменных

В этом разделе дано последовательное описание синтаксиса и семантики объявлений переменных. Разновидности переменных перечислены в следующей таблице:

Таблица 3.4.

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

Общая синтаксическая форма объявления переменных описана в начале раздела 3. В данном разделе для простоты изложения объявления описываются без спецификаций класса памяти и инициализаторов. Спецификации класса памяти описаны в разделе 3.6, инициализаторы — в разделе 3.7.

В объявлении простой переменной, массива и указателя спецификация типа может быть опущена. Если это объявление записано на внешнем уровне, то спецификация класса памяти тоже может быть опущена. В объявлении внутреннего уровня хотя бы одна из спецификаций — класса памяти или типа — должна присутствовать.

Объявление простой переменной

Синтаксис:

<спецификация типа> <идентификатор> [,<идентификатор>…];

Объявление простой переменной определяет имя переменной и ее тип. Имя переменной задается <идентификатором>. <Спецификация типа> задает тип переменной. Тип может быть базовым типом, либо типом структура, либо типом объединение. Если спецификация типа опущена, предполагается тип int.

Можно объявить несколько переменных в одном объявлении, задавая список <идентификаторов>, разделенных запятыми. Каждый <идентификатор> в списке именует отдельную переменную. Все переменные, заданные в таком объявлении, имеют одинаковый тип.

Примеры.

int х; /* пример 1 */

unsigned long reply, flag; /* пример 2 */

double order; /* пример 3 */


На Facebook В Твиттере В Instagram В Одноклассниках Мы Вконтакте
Подписывайтесь на наши страницы в социальных сетях.
Будьте в курсе последних книжных новинок, комментируйте, обсуждайте. Мы ждём Вас!

Похожие книги на "Язык программирования Си для персонального компьютера"

Книги похожие на "Язык программирования Си для персонального компьютера" читать онлайн или скачать бесплатно полные версии.


Понравилась книга? Оставьте Ваш комментарий, поделитесь впечатлениями или расскажите друзьям

Все книги автора C. Бочков

C. Бочков - все книги автора в одном месте на сайте онлайн библиотеки LibFox.

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Отзывы о "C. Бочков - Язык программирования Си для персонального компьютера"

Отзывы читателей о книге "Язык программирования Си для персонального компьютера", комментарии и мнения людей о произведении.

А что Вы думаете о книге? Оставьте Ваш отзыв.