GCC - The Complete Reference, страница 5

DJVU-файл GCC - The Complete Reference, страница 5 Информатика (599): Книга - 2 семестрGCC - The Complete Reference: Информатика - DJVU, страница 5 (599) - СтудИзба2015-07-19СтудИзба

Описание файла

DJVU-файл из архива "GCC - The Complete Reference", который расположен в категории "". Всё это находится в предмете "информатика" из 2 семестр, которые можно найти в файловом архиве МАИ. Не смотря на прямую связь этого архива с МАИ, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "информатика" в общих файлах.

Просмотр DJVU-файла онлайн

Распознанный текст из DJVU-файла, 5 - страница

Несмотря на применение опции -ег, используемой для выработки дополнительных предупреждений, распознаваемые, но не применяемые флаги игнорируются. Платформы Таблица 1.1. Основные платформы тестирования ВСС Процессор Операционное система йео йа1 Ыпох 2.1 НРЦХ 11.0 Сешап Ыпох 2.2, йеп На1 эпох 6.2 и ЕгееВ50 4.5 !й1Х 6.5 А1Х 4.Э.Э А!рпа НРРА !пге~ хвв М1РЯ РохгегРС Зрагс 8о1апв 2.7 Таблица 12. Вторичные платформы тестирования ВСС Процессор Операционном система Опух Рохгег РС Ярагс Айм Сгпох Ыпох МЭ тыпЭ2 и Сусхг1п ~п1е! х66 Сборный Компилятор ОСС работает на многих платформах. Платформа (р!ат(огш) здесь и далее понимается как сочетание определенного компьютерного процессора с запускаемой на нем определенной операционной системой. Несмотря на то, что ОСС переносится на тысячи таких аппаратно-системных сочетаний, лишь несколько основных платформ используются для тестирования правильности работы выпускаемых версий.

Эти основные платформы, перечисленные в таблице 1.1, выбраны из-за их популярности, и еще потому, что они вполне представляют свойства остальных поддерживаемых ОСС платформ. Со всей возможной тщательностью разработчики добиваются правильной работы ССС на основных платформах, перечисленных в таблице 1. !. Немалое внимание также уделяется и вторичным платформам, перечисленным в таблице 1.2. 24 часть ь свободно распространяемый компилятор Причиной первичного и вторичного тестирования на таком ограниченном количестве платформ является недостаток человеческих ресурсов. Несмотря на то, что ваша платформа может быть не представлена в этих перечнях, вы вполне можете рассчитывать на то, что компилятор прекрасно пойдет и на вашей системе. Полный набор средств для тестирования компилятора находится в его комплекте с исходным кодом.

С его помощью вы можете проверить, насколько правильно работает у вас ОСС. Другой подход состоит в том„чтобы в качестве добровольца тестировать на своей системе каждую очередную версию компилятора до ее выпуска, Что делает компилятор Компилятор действует как переводчик. Он читает набор инструкций, записанных в одной форме (обычно — текст на языке программирования), и переводит его в набор инструкций (обычно — последовательность машинных команд в двоичном формате), выполняемых когнпьютероы. Грубо говоря, компилятор можно разделить на две части: верхний и нижний его уровни.

Верхний уровень компилятора (Ггопг епб) читает исходный код программы и преобразует все, что имет соответствия в таблице, резидентно загруженной в память, в некоторую древовидную структуру. Когда же это дерево построено, низкний уровень компилятора (Ьас)г епд) читает информацию, записанную в этой передаваемой ему древовидной структуре, и преобразует ее в код на ассемблерном языке, соответствующем целевой машине. Далее представлена взятая, так сказать, "с высоты птичьего полета" последовательность шагов, предпринимаемых для преобразования вашего исходника в готовую для выполнения компьютером программу; ° В самом начале верхнего уровня компилятора находится лексический анализ (нначе говоря, разложение текста по грамматическим правилам для транслируемого исходного языка).

При этом считываются знаки из входного потока и по тому, как они сгруппированы, определяются составляемые имн программные символы, числа и пунктуация. ° Процесс синтаксического разбора (рапйпй ргосезз) читает поток символов (лексем), передаваемый ему лексическим сканером, и, следуя своему набору правил, определяет отношения между ними.

° Разделенная древовидная структура переводится на псевдо-ассемблерный язык, называемый Языком Регистрового Переноса (Кейяйег Тгалзгег ) апяцаяе, ЛП.). ° Работа нижнего уровня компилятора начинается с анализа кода на языке ВТЕ н выполнения некоторых действий по его оптимизации. При этом убираются избыточные и не используемые секции кода. Некоторые части кода могут быть перемешены по дереву в другое местоположение, чтобы предотвратить выполнение соответствуюшего набора инструкций большее число раз, чем это необходимо. В целом проводится больше дюжины различных оптимизаций, и некоторые из них проходят по обрабатываемому коду несколько раз. Глава 1.

Введение а ОСС 25 ° йЗУ;код, то есть код на Языке Регистрового Переноса переводится на ассемблерный язык целевой машины. ° Задействуется ассемблер, который транслирует ассемблерный код в объектный файл. Этот файл еще не имеет выполнимого формата — он содержит исполняемый объектный код, но еще не в той форме, которая годится для его запуска на выполнение машиной. Кроме того, он может содержать неразрешимые ссылки на подпрограммы (гоцйпез) и данные, находящиеся в других модулях.

° Компоновщик (11п(сег) связывает и объединяет ассемблированные объектные файлы (некоторые из них могут храниться в библиотеках объектного кода) в выполнимую машиной программу. Обратите внимание на полное разделение верхнего и нижнего уровней компилятора. Любой язык, обеспеченный синтаксическим разделителем (ларсером), может быть использован для создания компилируемой нижним уровнем ЙСС древовидной структуры. Кроме того, любая машина, обеспеченная программой, которая транслирует промежуточную древовидную структуру бСС в ассемблерный код, способна компилировать программы с любого из языков, поддерживаемого верхним уровнем компилятора. На самом деле кухня ОСС работает не так просто, как представлено вам в этом упрощенном описании. Но главное — это то, что она вполне справляется со своей работой. Языки программирования ОСС компилирует исходный код на нескольких языках программирования.

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

Язык программирования С вЂ” фундаментальный язык 6СС Основнзям языком, подерживаемым ОСС, является алгоритмический язык С. Вся эта система начиналась как компилятор С, и со временем к ней добавлялись другие языки. Это сложилось весьма удачно, потому что С вЂ” язык системного уровня, способный оперировать с простейшими элементами компьютерных программ, которые относительно упрощают построение на их основе внутренних структур других компиляторов. 26 Часть К Свободно распространяемый компилятор Если вы программируете на любом отличном от С языке, то как только вы ближе узнаете ОСС, то обнаружите, что многие привычнь1е для вас понятия имеются и в языке С, С некоторым допущением можно утверждать, что язык Сявляется чем-то вроде ассемблера высокого уровня, главным механизмом ОСС.

Кстати, большая часть компиляторов была создана именно на языке С Первым добавлением был язык С++ Язык программирования С++ является прямым расширением (с небольшими модификациями) языка программирования С Поэтому он стал превосходным кандидатом для первого расширения ОСС.

Все, что делается в С++, возможно и в С, поэтому не возникло потребности в изменении базового нижнего уровня компилятора. Понадобилось только добавить в верхний уровень новый синтаксический разделитель (рагвег) и семантический анализатор. Раз уж промежуточную структуру можно сгенерировать в том же виде, то остальная часть компилятора может оставаться той же, что и для компилятора С. Язык ОЬ|есИюе-С ОЬгесдге-С, не являясь столь же популярным языком, как С и С++, стал следующим удобным кандидатом для расширения компилятора ОСС.

Он происходит от языка С и основывается на нем. Его называют "языком С с объектами", и если вам приходилось его изучать, то вы хорошо понимаете, что при этом имеется в виду. В большинстве случаев можно написать всю программу на языке С, скомпилировать ее в ОЬ)есгйяе-С, и не почувствовать при этом никакой разницы. Особый синтаксис, явным образом отличающий этот язык от С, используется для определения объектных структур, поэтому не возникает ни путаницы ни конфликтов с любыми частями кода на чистом С. Добавление языка Рог~гаи Язык Гогггап умеет делать кое-что такое, чего не умеет С, а именно — точные математические расчеты.

Стандартная библиотека функций Рогггап, известная также как набор встроенных функций языка "Ропгап ншцг1пз1св" (встроенные функции действуют как часть самого язг|ка), имеет довольно сильные и глубокие возможности, эта библиотека совершенствовалась и расширялась в течение многих лет. Сейчас Гогггал широко используется для серьезных научных расчетов благодаря своим изначальным возможностям быстро и точно производить сложные вычисления.

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5231
Авторов
на СтудИзбе
424
Средний доход
с одного платного файла
Обучение Подробнее