Конвертер программы с подмножества языка Си в Паскаль с использованием LL(1) метода синтаксического анализа
Состав работы
|
|
|
|
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
При знакомстве с языком СИ, особенно после изучения Паскаля и Бейсика, погружение в детали его изобразительных средств может затушевать важную мысль: хотя на СИ можно написать практически любую прикладную программу, он изначально для этого не предназначен. СИ является результатом эволюционного развития языков создания системных программных средств. Если в прикладном программировании эволюция шла от Фортрана к Алголу, Коболу, Паскалю и т.д., то в системном - от Ассемблеров, привязанных к архитектуре ЭВМ, к СИ, для которого созданы трансляторы, делающие его хоть и независимым от архитектуры, но не меняющим основного предназначения.
С помощью СИ можно сделать то, что на Паскале сделать невозможно (или почти невозможно) - например, написать фрагмент операционной системы (или новую операционную систему), утилиты и т.п. Так, ряд трансляторов с Паскаля написаны на СИ; обратное невозможно представить. В то же время, не раз отмечалось, что прикладные программы, написанные на Паскале, отличаются большей надежностью, чем написанные на СИ; их легче читать, передавать от одного программиста другому для совершенствования и сопровождения. Это связано с тем, что Паскаль содержит существенно больше ограничений и является языком более высокого уровня с сильной типизацией данных. Для языка же, который предназначен для разработки системного программного обеспечения, чем меньше ограничений, тем лучше; так, в СИ возможны неявные преобразования всех базовых типов данных и указателей друг в друга, что крайне желательно при создании системных средств, но при невнимательности программиста приводит к ошибкам, не улавливаемым транслятором с СИ (Паскаль же подобные недопустимые операции пресекает немедленно).
Разумеется, сказанное выше не следует абсолютизировать. Программисты, привыкшие к СИ, успешно пишут на нем программы различных классов. Это касается не только СИ - вспомните об экспертных системах, написанных на Бейсике. В то же время, при массовом программировании придерживаться "разделение труда" между языками представляется более естественным.
С помощью СИ можно сделать то, что на Паскале сделать невозможно (или почти невозможно) - например, написать фрагмент операционной системы (или новую операционную систему), утилиты и т.п. Так, ряд трансляторов с Паскаля написаны на СИ; обратное невозможно представить. В то же время, не раз отмечалось, что прикладные программы, написанные на Паскале, отличаются большей надежностью, чем написанные на СИ; их легче читать, передавать от одного программиста другому для совершенствования и сопровождения. Это связано с тем, что Паскаль содержит существенно больше ограничений и является языком более высокого уровня с сильной типизацией данных. Для языка же, который предназначен для разработки системного программного обеспечения, чем меньше ограничений, тем лучше; так, в СИ возможны неявные преобразования всех базовых типов данных и указателей друг в друга, что крайне желательно при создании системных средств, но при невнимательности программиста приводит к ошибкам, не улавливаемым транслятором с СИ (Паскаль же подобные недопустимые операции пресекает немедленно).
Разумеется, сказанное выше не следует абсолютизировать. Программисты, привыкшие к СИ, успешно пишут на нем программы различных классов. Это касается не только СИ - вспомните об экспертных системах, написанных на Бейсике. В то же время, при массовом программировании придерживаться "разделение труда" между языками представляется более естественным.
Другие работы
Корпус - Вариант 3. Задание 60
.Инженер.
: 22 июля 2025
С.К. Боголюбов. Индивидуальные задания по курсу черчения. Задание 60. Вариант 3. Корпус.
По двум данным проекциям построить третью проекцию с применением разрезов, указанных в схеме, изометрическую проекцию учебной модели с вырезом передней четверти.
В состав работы входит:
По заданию выполненный чертеж детали;
3D модель детали.
150 руб.
Организация сети передачи данных по энергосетям с применением технологии PLC
evelin
: 5 октября 2013
При современном уровне развития компьютерной техники и сетевых технологий, к сетям предъявляются жесткие требования. Компьютерная сеть должна обеспечивать требуемую для конкретных условий скорость передачи; так же она должна быть мобильной, с большим количеством точек доступа, при этом не должна требоваться прокладки кабеля; сеть должна иметь простое администрирование; она должна обеспечивать высокую надежность при простых технических решениях; сеть должна поддерживать все возможные типы сетевог
15 руб.
Шпаргалки по сопромату
епт
: 6 июня 2008
шпоры по курсу сопромата
Главные оси и главные моменты инерции
Деформации и перемещения
ОСНОВНЫЕ ПОЛОЖЕНИЯ
Задачи сопротивления материалов
Исследование напряженного состояния при известных главных напряжениях
Классификация внешних сил и элементов конструкций
Коэффициенты запаса прочности. Допускаемые напряжения.
Метод сечений. Внутренние силы в поперечных сечениях бруса
Напряжения в поперечных сечениях бруса
Напряжения
Общие сведения о напряженном состоянии в точке тела
Осевые и центр
Гносеология - теория познания
Qiwir
: 30 августа 2013
Человечество всегда стремилось к приобретению новых знаний. Процесс овладения тайнами бытия есть выражение высших устремлений творческой активности разума, составляющего великую гордость человечества. За тысячелетия своего развития оно прошло длительный и тернистый путь познания от примитивного и ограниченного ко все более глубокому и всестороннему проникновению в сущность бытия. Развивающееся знание шло рука об руку с развитием производства, с расцветом искусств, художественного творчества. Наш
5 руб.