Презентация на тему: Работа виртуальной Си-машины на двух этапах

Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
Работа виртуальной Си-машины на двух этапах
1/19
Средняя оценка: 4.0/5 (всего оценок: 6)
Код скопирован в буфер обмена
Скачать (149 Кб)
1

Первый слайд презентации

Работа виртуальной Си-машины на двух этапах

Изображение слайда
2

Слайд 2

В квадратных скобках записывают необязательные элементы. Если в правой части БНФ выбирается одна из возможных конструкций, то эти альтернативы разделяются вертикальной чертой « | ». Пример 12. <программа> ::= <последовательность директив препроцессора> <заголовок программы> { <тело программы> } <последовательность директив препроцессора> ::= <директива> [<директива>…]

Изображение слайда
3

Слайд 3

<директива>::=#<тело директивы> <заголовок программы> ::= int main ([ < список аргументов > ]) < список аргументов > ::= <имя аргумента> [,<имя аргумента>…] <имя аргумента> ::= <имя> <имя> ::= <буква> | <имя><буква> | <имя> <цифра> <тело программы> ::=< оператор >; [< оператор >; …] < оператор > ::=< оператор описания > | < исполним ый оператор >

Изображение слайда
4

Слайд 4

2.2. Синтаксические диаграммы Синтаксические диаграммы состоят из прямоугольников, кругов и овалов, соединённых стрелками. В прямоугольниках записываются конструкции языка, которые будут определены в других синтаксических диаграммах. В кружках записываются зарезервированные символы языка. В овалах – зарезервированные слова языка.

Изображение слайда
5

Слайд 5

Название определяемой конструкции языка записывают над стрелкой, входящей в синтаксическую диаграмму. Признаком конца синтаксической диаграммы является стрелка, выходящая из неё.

Изображение слайда
6

Слайд 6

3. Типы, операторы и выражения в языке Си Основные объекты программы: - константы; - переменные. В Си требуется, чтобы все переменные были объявлены оператором описания (декларирования) до первого их использования.

Изображение слайда
7

Слайд 7

В декларациях устанавливаются типы и, возможно, значения. Имена переменных могут состоять из букв (только из латинского алфавита), цифр и символа подчеркивания, приравненного к букве. Правильные имена : a, c 1, x 12_45 g, begin_of_1. Неправильные имена : 1а, 12-78, _ of_1. Язык C и регистрозависимый, т.е. в именах различаются маленькие и большие буквы. Разные имена : ab, Ab, aB, AB. Начинаться имя должно с буквы. C символа подчеркивания начинаются внутренние имена встроенн ых библиотечных функций.

Изображение слайда
8

Слайд 8

Нельзя использовать в качестве имён ключевые слова языка C и. Например, int, if, for, char. Пример 13. #include <stdio.h> #define N 12 int main() { int i, main1[N], first_day_of_year; … }

Изображение слайда
9

Слайд 9

Базовые типы Си - char – единичный байт, содержащий одну литеру из допустимого набора ( ASCII ); - int – целое число; - float – вещественное одинарной точности; - double – вещественное удвоенной точности. В C различают два вида квалификаторов : 1) длины (применимы к целым, int можно опускать): - short ; - long ;

Изображение слайда
10

Слайд 10

2) знака (применимы к символьному и любому целому типу) : - signed ; - unsigned. limits. h - в этом файле устанавливаются размеры типов. float. h - в этом файле устанавливаются константы с плавающей точкой. Размер short ≤ Размер int ≤ Размер long

Изображение слайда
11

Слайд 11

Тип Размер, бит Диапазон unsigned char 8 0..255 char 8 -128..127 unsigned short 16 0..65535 short 16 -32768..32767 unsigned int 16 0..65535 int 16 -32768..32767 unsigned long 32 0..4294967245 long 32 -2147483648..2147483647 float 32 3.4e-38..3.4e+38 double, long double 64 1.7 e -308..1.7 e +308 Типичная реализация типов в языке C и

Изображение слайда
12

Слайд 12

Логический тип, который моделируется целым типом: ложь = 0, истина = не 0. Тип «пустой» ( void ) – отсутствие какого-либо значения. В С ++ при сутствует базовый логический тип – bool (1 байт). Указатель на void – указатель на данные любого типа (может быть приведен к указателю на любой тип). Тип указатель. Переменная-указатель содержит адрес ячейки памяти.

Изображение слайда
13

Слайд 13

!!! «Размерность типа» зависит от версии компилятора, разрядности ОС, модели данных компилятора и ОС. DOS: Turbo C 2.0, Turbo C++ 3.0 Win32: Visual Studio (С++) Win64: Visual Studio (С++) sizeof ( int ) 2 4 4 sizeof ( int *) 2 4 8 sizeof (long) 4 4 4 Для определения количества байтов, выделяемых под тип, используется оператор sizeof. int j; j= sizeof (double);

Изображение слайда
14

Слайд 14

Константы В C и для целочисленных констант поддерживаются три системы счисления. 10 с/с : цифры от 0 до 9, не могут начинаться с 0. 170 /*десятичная*/ 8 с/с : цифры от 0 до 7, начинаются с 0. 16 с/с : цифры от 0 до 9, буквы A.. F ( a.. f ) начинаются с 0х или 0Х. 0252 /*восьмеричная*/

Изображение слайда
15

Слайд 15

0хАА /*шестнадцатеричная*/ 170 L /*десятичная длинная*/ 0252 L /*восьмеричная длинная*/ 0Х A А L /*шестнадцатеричная длинная*/ Во внутреннем представлении, если целая константа превысила 16 разрядов – автоматически представляется как 32 разряда (10 с/с).

Изображение слайда
16

Слайд 16

Если значение 8-ой или 16-ой константы превысило наибольшее целое без знака, то оно также будет представлено, как длинное беззнаковое. Вещественная константа : 0.1 e-2, 0.01. Символьная константа : ‘a’, ‘9’, ‘M’. Существуют специальные символьные константы: ESC- последовательности : - ‘\’’ – апостроф; - ‘\’’’ – двойные кавычки;

Изображение слайда
17

Слайд 17

- ‘\0’ – пустой символ; - ‘\n’ – новая строка; - ‘\ \ ’ – обратная косая черта. Символьная константа имеет целый тип и занимает один байт: ‘9’=57. Строковая константа : “ программирование ”, “ программная инженерия ”. Строковая константа – это массив символов, в конце которого вставлен код признака конца строки - \0. Восьмиричн ый код символа – последовательность трех цифр : ‘\ddd’.

Изображение слайда
18

Слайд 18

“ ПИ ” Именованные константы: П И \ 0 # define <имя> <текст> <имя> - символьное имя. <текст> - последовательность литер. #define N 100 … char str[N+1]; По тексту программы производится замена <имя> на <текст> на этапе компиляции (память под такую константу не выделяется).

Изображение слайда
19

Последний слайд презентации: Работа виртуальной Си-машины на двух этапах

Замена не происходит: - внутри строковых констант; - если цепочка, составляющая имя, является частью определения другого имени. #define N 100 #define NNN 10 Особенности синтаксиса: - не нужно писать декларации ( определять переменную); - после # define не нужна «;». - имена констант традиционно состоят из заглавн ых букв;

Изображение слайда