Алексей Молчанов - Системное программное обеспечение. Лабораторный практикум

Тут можно читать онлайн Алексей Молчанов - Системное программное обеспечение. Лабораторный практикум - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство Array Издательство «Питер», год 2005. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Системное программное обеспечение. Лабораторный практикум
  • Автор:
  • Жанр:
  • Издательство:
    Array Издательство «Питер»
  • Год:
    2005
  • Город:
    Санкт-Петербург
  • ISBN:
    978-5-469-00391-4
  • Рейтинг:
    5/5. Голосов: 11
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

Алексей Молчанов - Системное программное обеспечение. Лабораторный практикум краткое содержание

Системное программное обеспечение. Лабораторный практикум - описание и краткое содержание, автор Алексей Молчанов, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
В книге рассматриваются базисные теоретические основы, необходимые для построения компиляторов, основные технологические приемы и методы их реализации. В ней приведены различные варианты заданий для выполнения лабораторного практикума по курсу «Системное программное обеспечение», а также примеры выполнения этих заданий. В каждом примере подробно рассматриваются все особенности его выполнения, как на этапе подготовки необходимой математической базы, так и на этапе программной реализации. В лабораторных работах автор обращает внимание на основные сложности, связанные с ее выполнением, а также на возможные типичные ошибки и недочеты, дает рекомендации по возможностям программной реализации, отличным от кода, приводимого в примерах.
Книга ориентирована на студентов, обучающихся в технических вузах по специальностям, связанным с вычислительной техникой. Но она будет также полезна всем, чья деятельность так или иначе касается разработки программного обеспечения.

Системное программное обеспечение. Лабораторный практикум - читать онлайн бесплатно полную версию (весь текст целиком)

Системное программное обеспечение. Лабораторный практикум - читать книгу онлайн бесплатно, автор Алексей Молчанов
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

– условный оператор вида if <���выражение> then <���оператор> либо if <���выражение> then <���оператор> else <���оператор>;

– составной оператор вида begin… end;

– оператор цикла, предусмотренный вариантом задания;

• выражения в операторах могут содержать следующие операции (минимум):

– арифметические операции сложения (+) и вычитания (-);

– операции сравнения «меньше» (<), «больше» (>), «равно» (=);

– логические операции И (and), ИЛИ (or), НЕ (not);

– дополнительные арифметические операции, предусмотренные вариантом задания;

• операндами в выражениях могут выступать идентификаторы (переменные) и константы (тип допустимых констант указан в варианте задания);

• все идентификаторы, встречающиеся в исходной программе, должны восприниматься как переменные, имеющие тип, заданный в варианте задания (предварительного описания идентификаторов в исходной программе не требуется);

• должны учитываться два предопределенных идентификатора InpVar и Compi 1 eTest, смысл которых будет ясен из приводимого далее описания выходного языка.

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

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

Компилятор должен проверять следующие семантические ограничения входного языка:

• не допускается присвоение значений константам;

• не допускается присвоение значения идентификатору InpVar;

• не допускается использовать идентификатор Compi 1 eTest, иначе как для присвоения ему значений.

В качестве выходного (результирующего) языка должен использоваться язык ассемблера процессоров типа Intel 80x86 в модификации встроенного языка ассемблера компилятора Pascal производства фирмы Borland.

Результирующая программа должна иметь следующий вид:

Prog <���Имя_программы>;

{Имя программы выбирается исполнителем самостоятельно}

Var InpVar: <���Тип_данных>;

{Тип данных указан в варианте задания}

Var <���Список_переменных>: <���Тип_данных>;

{Список переменных должен содержать перечень

всех переменных из исходной программы}

Function CompileTest(InpVar: <���Тип_данных>): <���Тип_данных>;

{Переменные CompileTest и InpVar являются предопределенными

в тексте исходной программы}

Begin

Asm

{Сюда должен быть включен текст результирующей программы,

порожденный компилятором}

end;

end;

begin

readln(InpVar);

writeln(CompileTest(InpVar));

end.

Всю неизменную часть результирующей программы компилятор должен порождать самостоятельно вне зависимости от поданной на вход исходной программы.

Имя результирующей программы исполнитель выбирает самостоятельно. Идентификаторы InpVar и CompileTest являются предопределенными переменными, которые используются для подачи значений на вход результирующей программы и получения результата от нее при тестировании работоспособности результирующей программы.

Тип данных, используемый для всех переменных, задается в варианте задания.

Все встречающиеся в исходной программе идентификаторы следует считать простыми скалярными переменными, не требующими выполнения преобразования типов. Ограничения на длину идентификаторов и констант во входной программе исполнитель выбирает самостоятельно, но выбранная длина не должна быть меньше 32.В случае если на вход компилятора подается входная программа, содержащая семантические или синтаксические ошибки, компилятор должен корректно завершать свое выполнение и выдавать сообщение о найденной ошибке во входной программе с указанием строки, в которой найдена ошибка. По возможности компилятор должен указывать тип найденной ошибки. Компилятор может указать несколько ошибок во входной программе, если они были им обнаружены.

Варианты заданий

Предлагаемые варианты заданий приведены в табл. 5.2.

Таблица 5.2. Варианты заданий на выполнение курсовой работы
Ниже поясняются цифровые обозначения используемые в табл 52 Типы констант - фото 72 Ниже поясняются цифровые обозначения используемые в табл 52 Типы констант - фото 73 Ниже поясняются цифровые обозначения используемые в табл 52 Типы констант - фото 74

Ниже поясняются цифровые обозначения, используемые в табл. 5.2. Типы констант:

2 – двоичные;

8 – восьмеричные;

16 – шестнадцатеричные.

Дополнительные операции:

*, / – умножение и деление;

>> << – сдвиги вправо и влево (арифметические или логические – по выбору);

++ – инкремент (увеличение значения переменной на 1);

– декремент (уменьшение значения переменной на 1).

Типы дополнительных операторов цикла:

1. Цикл с предусловием вида while <���выражение> do <���оператор>.

2. Цикл с постусловием типа repeat <���оператор> until <���выражение>.

3. Цикл с постусловием вида do <���оператор> while <���выражение>.

4. Два варианта цикла с перечислением по заданной переменной вида for <���переменная>:=<���выражение> to <���выражение> do <���оператор> либо for <���переменная>:=<���выражение> downto <���выражение> do <���оператор>.

Типы комментариев:

1. Комментарий в фигурных скобках: {…}.

2. Комментарий в круглых скобках со звездочкой: (*…*).

3. Комментарий за двойной косой чертой до конца строки: //….

4. Комментарий внутри косых черт со звездочкой: /*…*/.

Методы оптимизации:

1. Исключение лишних операций.

2. Свертка объектного кода.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Алексей Молчанов читать все книги автора по порядку

Алексей Молчанов - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Системное программное обеспечение. Лабораторный практикум отзывы


Отзывы читателей о книге Системное программное обеспечение. Лабораторный практикум, автор: Алексей Молчанов. Читайте комментарии и мнения людей о произведении.


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

Напишите свой комментарий
x