Конвертер программы с подмножества языка Си в Паскаль с использованием LL(1) метода синтаксического анализа
Состав работы
|
|
|
|
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
При знакомстве с языком СИ, особенно после изучения Паскаля и Бейсика, погружение в детали его изобразительных средств может затушевать важную мысль: хотя на СИ можно написать практически любую прикладную программу, он изначально для этого не предназначен. СИ является результатом эволюционного развития языков создания системных программных средств. Если в прикладном программировании эволюция шла от Фортрана к Алголу, Коболу, Паскалю и т.д., то в системном - от Ассемблеров, привязанных к архитектуре ЭВМ, к СИ, для которого созданы трансляторы, делающие его хоть и независимым от архитектуры, но не меняющим основного предназначения.
С помощью СИ можно сделать то, что на Паскале сделать невозможно (или почти невозможно) - например, написать фрагмент операционной системы (или новую операционную систему), утилиты и т.п. Так, ряд трансляторов с Паскаля написаны на СИ; обратное невозможно представить. В то же время, не раз отмечалось, что прикладные программы, написанные на Паскале, отличаются большей надежностью, чем написанные на СИ; их легче читать, передавать от одного программиста другому для совершенствования и сопровождения. Это связано с тем, что Паскаль содержит существенно больше ограничений и является языком более высокого уровня с сильной типизацией данных. Для языка же, который предназначен для разработки системного программного обеспечения, чем меньше ограничений, тем лучше; так, в СИ возможны неявные преобразования всех базовых типов данных и указателей друг в друга, что крайне желательно при создании системных средств, но при невнимательности программиста приводит к ошибкам, не улавливаемым транслятором с СИ (Паскаль же подобные недопустимые операции пресекает немедленно).
Разумеется, сказанное выше не следует абсолютизировать. Программисты, привыкшие к СИ, успешно пишут на нем программы различных классов. Это касается не только СИ - вспомните об экспертных системах, написанных на Бейсике. В то же время, при массовом программировании придерживаться "разделение труда" между языками представляется более естественным.
С помощью СИ можно сделать то, что на Паскале сделать невозможно (или почти невозможно) - например, написать фрагмент операционной системы (или новую операционную систему), утилиты и т.п. Так, ряд трансляторов с Паскаля написаны на СИ; обратное невозможно представить. В то же время, не раз отмечалось, что прикладные программы, написанные на Паскале, отличаются большей надежностью, чем написанные на СИ; их легче читать, передавать от одного программиста другому для совершенствования и сопровождения. Это связано с тем, что Паскаль содержит существенно больше ограничений и является языком более высокого уровня с сильной типизацией данных. Для языка же, который предназначен для разработки системного программного обеспечения, чем меньше ограничений, тем лучше; так, в СИ возможны неявные преобразования всех базовых типов данных и указателей друг в друга, что крайне желательно при создании системных средств, но при невнимательности программиста приводит к ошибкам, не улавливаемым транслятором с СИ (Паскаль же подобные недопустимые операции пресекает немедленно).
Разумеется, сказанное выше не следует абсолютизировать. Программисты, привыкшие к СИ, успешно пишут на нем программы различных классов. Это касается не только СИ - вспомните об экспертных системах, написанных на Бейсике. В то же время, при массовом программировании придерживаться "разделение труда" между языками представляется более естественным.
Другие работы
Проектирование, расчет и разработка станка с ЧПУ модели 16К20Ф3
GnobYTEL
: 12 декабря 2011
Содержание
Введение 3
1 Описание токарного станка 4
2 Расчет режимов резания 9
3 Кинематический расчет привода главного движения 12
4 Расчет числа зубьев зубчатых колес 15
5 Расчет мощности на валах коробки скоростей 16
6 Определение модулей зубчатых колес коробки скоростей 16
7 Определение геометрических параметров зубчатых колес 17
8 Определение диаметров валов 18
9 Расчет ременной передачи 19
10 Расчет шпиндельного узла 20
Заключение 23
Список использованных источников 24
Приложение 25
Данн
45 руб.
Рулевая ГАЗ 53-70
grom555
: 2 сентября 2019
1 чертёж,формат А1, Сборочный чертеж выполнен в компасе 16ой версии на формате А1. На листе изображёна рулевая, проставлены основные размеры, основная надпись не заполнена, файл имеет расширение cdw. , упакован в rar. чертёж выполнен в соответствии с ЕСКД. Может быть использован для Курсовых и Дипломных проектов по машиностроительным дисциплинам
120 руб.
Розрахунок мостових схем електромеханічних систем автоматики
tnhpt34
: 28 апреля 2013
Задача 1
Розрахувати схему вимірювального елемента напруги (рис.1) на лампі розжарювання при заданій напрузі Uзад =19 В й опорі навантаження rн =310 Ом. Температура навколишнього середовища Θср = 20 oС.
Задача 2
Розрахувати вимірювальний елемент напруги на напівпровідниковому термісторі при заданій напрузі змінного струму Uзад = 33 В, опору навантаження rн,= 1700 Ом і температура навколишнього середовища = 20°С.
Задача 3
Розрахувати схему вимірювального елемента частоти, зображену на рис. 2
15 руб.
Учет операций на текущих счетах банка
DocentMark
: 7 ноября 2012
СОДЕРЖАНИЕ
Введение
1. Теоретические аспекты учета операций на текущих счетах в банках
1.1. Открытие и порядок ведения операций на текущих счетах
банка
1.2. Учет операций на расчетном счете
1.3 Учет операций на специальных и валютных счетах
2. Учет операций на текущих счетах Евразийского Банка
2.1. Общая характеристика банка
2.2 Системы организации учета операций на счетах банка
Заключение
Список использованной литературы
ВВЕДЕНИЕ
Между предприятиями, учреждениями, организациями расчеты осущест