Pas-pg.dos/Tpw1 icon

Pas-pg.dos/Tpw1



НазваниеPas-pg.dos/Tpw1
Дата конвертации28.08.2012
Размер22.37 Kb.
ТипДокументы
1. /Pas-pg.dos/Cont.txt
2. /Pas-pg.dos/Tpw1.txt
3. /Pas-pg.dos/Tpw10.txt
4. /Pas-pg.dos/Tpw11.txt
5. /Pas-pg.dos/Tpw12.txt
6. /Pas-pg.dos/Tpw13.txt
7. /Pas-pg.dos/Tpw14.txt
8. /Pas-pg.dos/Tpw15.txt
9. /Pas-pg.dos/Tpw16.txt
10. /Pas-pg.dos/Tpw17.txt
11. /Pas-pg.dos/Tpw18.txt
12. /Pas-pg.dos/Tpw19.txt
13. /Pas-pg.dos/Tpw2.txt
14. /Pas-pg.dos/Tpw20.txt
15. /Pas-pg.dos/Tpw21.txt
16. /Pas-pg.dos/Tpw22.txt
17. /Pas-pg.dos/Tpw23.txt
18. /Pas-pg.dos/Tpw24_1.txt
19. /Pas-pg.dos/Tpw24_2.txt
20. /Pas-pg.dos/Tpw3.txt
21. /Pas-pg.dos/Tpw4.txt
22. /Pas-pg.dos/Tpw5.txt
23. /Pas-pg.dos/Tpw6.txt
24. /Pas-pg.dos/Tpw7.txt
25. /Pas-pg.dos/Tpw8.txt
26. /Pas-pg.dos/Tpw9.txt
27. /Pas-pg.dos/Tpwa.txt
28. /Pas-pg.dos/Tpwb.txt
29. /Pas-pg.dos/Tpwin.txt
                 Часть 1. Стандарт Турбо Паскаля

                  Глава 1. Лексемы и константы

Лексемы - это минимальные значимые единицы текста в программе, написанной на Паскале. Они представлены такими категориями как специальные символы, идентификаторы, метки, числа и строковые константы. 
     Программа, написанная на Паскале, состоит из лексем и разделителей, причем разделитель представляет собой пробел или комментарий. Две соседних лексемы, если они представляют собой зарезервированное слово, идентификатор, метку или число, должны быть отделены друг от друга одним и несколькими разделителями. 
     Примечание: Разделители не могут быть частью лексем, за исключением строковых констант.
Специальные символы и зарезервированные слова Турбо Паскаль использует следующие подмножества набора символов кода ASCII: - Буквы английского алфавита от A до Z и от a до z. - Цифры - арабские цифры от 0 до 9. - Шестнадцатиричные цифры - арабские цифры от 0 до 9, буквы от A до F и буквы от a до f. - Пробелы - символ пробела (ASCII 32) и все управляющие символы кода ASCII (ASCII 0-31), включая символ конца строки или символ возврата каретки (ASCII 13). Далее для буквы, цифры и шестнадцатиричной цифры приведены синтаксические диаграммы. Чтобы прочитать диаграмму, следуйте по стрелкам. Часто встречаются альтернативные пути: путь, начинающийся слева и заканчивающийся стрелкой справа, является допустимым. Путь пересекает рамки, содержащие имена элементов, используемых для построения этой части синтаксиса. Имена в одинарных рамках должны быть заменены действительными конструкциями. Двойные рамки содержат зарезервированные слова, знаки операций и знаки пунктуации, то есть допустимые термы, используемые в программе. буква ────────┬───────┬────────┬───────┐ │ │ │ │ ╒╧╕ ╒╧╕ ╒╧╕ ╒╧╕ │A│ ... │Z│ │a│ ... │z│ ╘╤╛ ╘╤╛ ╘╤╛ ╘╤╛ │ │ │ │ └───────┴────────┴───────┴────────── цифра ──┬────┬────┬────┬────┬────┬────┬────┬────┬────┐ │ │ │ │ │ │ │ │ │ │ ╒╧╕ ╒╧╕ ╒╧╕ ╒╧╕ ╒╧╕ ╒╧╕ ╒╧╕ ╒╧╕ ╒╧╕ ╒╧╕ │1│ │2│ │3│ │4│ │5│ │6│ │7│ │8│ │9│ │0│ ╘╤╛ ╘╤╛ ╘╤╛ ╘╤╛ ╘╤╛ ╘╤╛ ╘╤╛ ╘╤╛ ╘╤╛ ╘╤╛ │ │ │ │ │ │ │ │ │ │ └────┴────┴────┴────┴────┴────┴────┴────┴────┴──── ┌───────┐ шестнадцатиричная ────────│ цифра ├──────────────┐ цифра │ └───────┘ │ └─┬───────┬──────┬───────┐ │ │ │ │ │ │ ╒╧╕ ╒╧╕ ╒╧╕ ╒╧╕ │ │a│ ... │f│ │A│ ... │F│ │ ╘╤╛ ╘╤╛ ╘╤╛ ╘╤╛ │ │ │ │ │ │ └───────┴──────┴───────┴─────┴─────── Специальные символы и зарезеривированные слова представляют собой символы, имеющие одно или несколько фиксированных значений. Специальными символами являются следующие одиночные символы: + - * / = < > [ ] . , ( ) : ; ^ @ { } $ # Следующие пары символов также представляют собой специальные символы: <= >= := .. (* *) (. .) Некоторые специальные символы являются также знаками операций. Левая квадратная скобка ([) эквивалентна паре символов, состоящей из левой круглой скобки и точки ((.). Аналогично правая квадратная скобка (]) эквивалентна паре символов, состоящей из точки и правой круглой скобки (.)). Следующие слова являются зарезервированными в Турбо Паскале: Таблица 1.1 Зарезервированные слова Турбо Паскаля ────────────────────────────────────────────────────────── and export nil string asm file not then array for object to begin function of type case goto or unit const if packed until constructor implementation procedure uses destructor in program var div inline record while do interface repeat with downto label set xor else library shl end mod shr ────────────────────────────────────────────────────────── В настоящем руководстве зарезервированные слова записаны строчными буквами. Однако, для Турбо Паскаля безразличен регистр клавиатуры, поэтому вы можете использовать в своей программе как строчные (нижний регистр), так и прописные (верхний регистр) буквы. Далее приведены стандартные директивы Турбо Паскаля. В отличие от зарезервированных слов, пользователь может их переопределить. Однако делать это не рекомендуется. Таблица 1.2 Стандартные директивы Турбо Паскаля ────────────────────────────────────────────────── absolute external index near assembler far interrupt private export forward name resident virtual ────────────────────────────────────────────────── Заметим, что private является зарезервированным словом только внутри объектов. Идентификаторы Идентификаторами обозначаются имена констант, типов, переменных, процедур, модулей, программ и полей в записях. Идентификатор может иметь любую длину, однако только первые его 63 символа являются значимыми. Идентификатор должен начинаться с буквы и не может содержать пробелов. После первого символа идентификатора можно использовать буквы, цифры и символы подчеркивания (значение ASCII $5F). Как и в зарезервированных словах, в идентификаторах можно использовать как строчные, так и прописные буквы (компилятор их не различает). Идентификатор должен начинаться с буквы и не должен содержать пробелов. После первого символа допускаются буквы, цифры и знак подчеркивания (ASCII $5F). Как и зарезервированные слова, идентификаторы безразличны к регистру клавиатуры. Когда имеется несколько мест с указанием одного и того же идентификатора, для задания нужного идентификатора необходимо уточнить этот идентификатор с помощью идентификатора модуля. Например, для уточнения идентификатора Ident с помощью идентификатора UnitName следует записать UnitName.Ident. Такой комбинированный идентификатор называется уточненным идентификатором. Примечание: Модули описываются в Главе 3 "Руководства пользователя" и в Главе 9 данного руководства. ┌─────┐ идентификатор ─────│буква├──────────────────────────────┬── └─────┘  ┌─────┐ │ ├───┤буква│───────────────┤ │ └─────┘ │ │ ┌─────┐ │ ├───┤цифра│───────────────┤ │ └─────┘ │ │ ┌────────────────────┐ │ └──┤символ подчеркивания│─┘ └────────────────────┘ ╒═╕ символ подчеркивания ────────── │_│──────────── ╘═╛ идентификатор программы ┌─────────────┐ идентификатор модуля ──────│идентификатор│────── идентификатор поля └─────────────┘ ┌─────────────┐ уточненный ──┬──────────────────────────────│идентификатор├─ идентификатор│  └─────────────┘ │ ┌────────────────────┐ ╒═╕ │ └│идентификатор модуля├─│.│─┘ └────────────────────┘ ╘═╛ Приведем несколько примеров идентификаторов: Writeln Exit Real2String System.MemAvail Dos.Exec WinCrt.WhereX Метки Меткой является последовательность цифр в диапазоне от 0 до 9999. Начальные нули не являются значащими. Метки используются с операторами перехода goto. ┌───────────────────────┐ метка ───┬────│последовательность цифр├─────────── │ └───────────────────────┘  │ ┌─────────────┐ │ └────│идентификатор├───────────────┘ └─────────────┘ Как расширение стандартного Паскаля, Турбо Паскаль позволяет использовать в качестве меток идентификаторы функций. Числа Для чисел, представляющих собой константы целого и вещественного типа, используется обычная десятичная запись. Целая константа в шестнадцатиричном формате имеет в качестве префикса знак доллара ($). Научное обозначение (E или е с показателем степени) в вещественных типах читается, как "на десять в степени". Например, 7E- означает 7х10^-2, а 12.25E+6 или 12.25E6 оба обозначают 12.25х10^+6. Синтаксические диаграммы для записи чисел приведены ниже. ┌───────────────────────┐ последовательность ─────────│шестнадцатиричная цифра├───┬─ шестнадцатиричных цифр  └───────────────────────┘ │ │ │ └────────────────────────────────┘ ┌─────┐ последовательность──────────│цифра├──────────┬─────────── цифр  └─────┘ │ │ │ └───────────────────────┘ ┌───────────────────────┐ целое без знака ──┬─────│последовательность цифр│───────── │ └───────────────────────┘  │ ╒═╕ ┌────────────────────────┐ │ └───│$│───│последовательность ├──┘ ╘═╛ │шестнадцатиричных цифр │ └────────────────────────┘ ╒═╕ знак ──────┬────│+│─────────────── │ ╘═╛  │ ╒═╕ │ └────│-│───────┘ ╘═╛ вещественное без знака ┌──────────┐ ┌──────────┐ ───│последова-│ ╒═╕ │последова-│ │тельность ├─┬─│.│──│тельность ├─┬───────────────── │цифр │ │ ╘═╛ │цифр │ │  └──────────┘ │ └──────────┘ │ │ │  ┌──────────┐ │ └───────────────────────│масштабный├──┘ │множитель │ └──────────┘ ╒═╕ ┌──────────────────┐ масштабный─┬──│E├─────┬─────────────│последовательность├── множитель │ ╘═╛  │  │цифр │ │ ╒═╕ │ │ ┌────┐ │ └──────────────────┘ └──│e├──┘ └──│знак├──┘ ╘═╛ └────┘ ┌───────────────┐ число без знака ─┬──│целое без знака├───────────────────── │ └───────────────┘  │ │ │ ┌──────────────────────┐ │ └──д│вещественное без знака├───┘ └──────────────────────┘ ┌───────────────┐ число со знаком ──┬─────────────│число без знака│──────── │  └───────────────┘ │ ┌────┐ │ └─│знак│──┘ └────┘ Числа с десятичными точками или показателями степени представляют собой константы вещественного типа. Остальные десятичные числа обозначают константы целого типа. Они должны принимать значения в диапазоне от -2147483648 до 2147483647. Шестнадцатиричные числа обозначают константы целочисленного типа. Они должны находиться в диапазоне от $00000000 до $FFFFFFFF. Окончательный знак значения определяется шестнадцатиричной записью. Строки символов Строка символов представляет собой последовательность, содержащую ноль и более символов из расширенного набора символов кода ASCII (Приложение B), записанную в одной строке программы и заключенную в одиночные кавычки (апострофы). Строка символов, ничего не содержащая между апострофами, называется нулевой строкой. Два последовательных апострофа в строке символов обозначают один символ - апостроф. Атрибут длины строки символов выражается действительным количеством символов между апострофами. Будучи расширением стандартного Паскаля, Турбо Паскаль разрешает вставлять в строку символов управляющие символы. Символ # с целой константой без знака в диапазоне от 0 до 255 обозначает соответствующий этому значению символ в коде ASCII. Между символом # и целой константой не должно быть никаких разделителей. Аналогично, если несколько управляющих символов входит строку символов, то между ними не должно быть разделителей. ╒═╕ ╒═╕ строка символов ─────┤'├────────────────────┤'├──── ╘═╛ ╘═╛  │ │ ┌───────────────┐ │ └──┤ символ строки │──┘ └───────────────┘ ┌─────────────────────────────┐ строчный символ ──┬──│любой символ кроме (') или CR├────── │ └─────────────────────────────┘  │ ╒═╕ ╒═╕ │ └──────────│'├───────────│'├────────┘ ╘═╛ ╘═╛ Строка символов нулевой длины (нулевая строка) допустима только для строковых типов. Строка символов с длиной, равной 1, допустима для любого символьного и строкового типа. Строка символов длиной n, где n больше или равно 2, совместима с любым строковым типом и упакованным массивом из n символов, а также совместима с типом PChar при разрешении расширенного синтаксиса {$Х+}. Приведем несколько примеров строк символов: 'TURBO' 'You'll see' '''' ';' ' ' #13#10 'Line 1'#13'Line2' #7#7'Make up!'#7#7 Описания констант Описание константы содержит идентификатор, который является обозначением константы внутри блока, содержащего описание. Идентификатор константы не может быть включен в свое собственное описание. ┌─────────────┐ ╒═╕ ┌─────────┐ ╒═╕ описание ──│идентификатор├──│=├──│константа├──│;├─── константы └─────────────┘ ╘═╛ └─────────┘ ╘═╛ ┌───────────┐ константа ───────────────────│ выражение ├────────── └───────────┘ Являясь расширением стандартного Паскаля, Турбо Паскаль позволяет использовать выражения-константы. Выражение-константа представляет собой выражение, которое может вычисляться компилятором без необходимости выполнения программы. Приведем примеры выражений-констант: 100 'A' 256 - 1 (2.5 + 1) / (2.5 - 1) 'Turbo' + '' + 'Pascal' Chr(32) Ord('Z') - Ord('A') + 1 Простейший случай выражения-константы представляет собой простая константа, например 100 или 'A'. В стандартном Паскале допускается использовать только простые константы. В Турбо Паскале разрешено использование выражений-констант. Примечания: Там, где допускается использовать простую константу, допускается использование и выражения-константы. Поскольку компилятор должен иметь возможность полностью вычислить выражение-константу во время компиляции, в качестве выражений-констант не допускается использовать следующие конструкции: - ссылки на переменные и типизованные константы (кроме констант в адресных выражениях, описываемых в Главе 5); - вызовы функций (кроме тех, которые отмечены далее); - оператор получения адреса @ (кроме констант в адресных выражениях, описываемых в Главе 5). За исключением этих ограничений для выражений-констант соблюдаются те же синтаксические правила, что и для обычных выражений (описанных в Главе 6 "Выражения"). В выражениях-константах допускается использовать следующие стандартные фукнции: Abs, Chr, Hi, Length, Lo, Odd, Ord, Pred, Ptr, Round, SizeOf, Succ, Swap, Trunc. Приведем некоторые примеры использования выражений-констант в описаниях констант: const Min = 0; Max = 100; Center = (Max - Min) div 2; Beta = Chr(255); NumChars = Ord('Z') - Ord('A') + 1; Message = 'Out of memory'; ErrStr = 'Error:' + Message + '.'; ErrPos = 80 - Length(Error) div 2; ErrAttr = Blink + Red * 16 + White; Ln10 = 2.302585092994095684; Ln10R = 1 / Ln10; Numeric = ['0'..'9']; Alpha = ['A'..'Z','a'..'z']; AlphaNum = Alpha + Numeric; Комментарии Следующие конструкции представляют собой комментарии и поэтому игнорируются компилятором: { любой текст, не содержащий правую фигурную скобку} (* любой текст, не содержащий звездочку/правую круглую скобку *) Комментарий, содержащий знак доллара ($) сразу после открывающей скобки { или (*, является директивой компилятора. За символом $ следует мнемоника команды компилятора. Примечание: Общее описание директив компилятора дано в Главе 21. Строки программы В Турбо Паскале строки программы имеют максимальную длину в 126 символов. ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄АЬH  ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄АГ  Е  ╖  ╣  щ  ы  ┤pю  M  ▄▄▄▄ <7 MЖ  И  ┌    >  Э  A  м  З  ╢  7 ╢х    E  u  д  ▐  р     Z   Ш   7 Ш ╓      Q   У   Х   └   ·   4   n   и   7 и т      V   Р   ╥   ╘   Ц   ┘   █   (  7 (X  Z  }  ┴  №  <  s  и  █    7 E  {  ░  ф    O  Г  й  ╧    7     ┬  №  7  o  к  ц  !  \  7 \^  ┤  ▌  ▀  V     Ё  g  ╪  °  7 °:  y  ╕  ў  6  u  ┤  є  2  n  7 nЧ  ═  Ў  °  *  c  Х  Ч  ╪     7  \   Н   ╛   э   я   "!  $!  2!  =!  O!  7 O!e!  t!  И!  К!  п!  ▒!  P"  "  ║"  я"  7 я"$#  Y#  ~#  А#  ·#  $  !$  ъ%  $&  d&  7 d&в&  р&  '   '  H'  З'  ║'  э'   (  "(  7 "(X(  Ш(  ╓(  )  R)  Н)  ╚)  ╩)  т)   *  7 ***  J*  j*  В*  Д*  Ш*  ┼*  Є*  3+  s+  7 s+│+  є+  3,  p,  н,  п,  э,  .-  l-  к-  7 к-╥-  ў-  ∙-  #.  c.  Ш.  ═.  /  7/  h/  7 h/j/  а/  ▀/  0  70  Y0  x0  z0  l1  62  7 62`2  b2  X4   6  @6  {6  ▒6  ц6  7  P7  7 P7Б7  Г7  ┐7  8  B8  В8  ┬8  ∙8  √8  {:  7 {:н:  п:  ╜:  ╨:  █:  х:  я:  ¤:  ;  /;  7 /;1;  \;  ^;  '<  d<  е<  т<  ф<  =  S=  7 S=Е=  З=  Ш>  г>  о>  ╜>  ┌>  ∙>  ?  '?  7 '?)?  @  Р@  SA  ╚A  B  hB  C  ╖C  D  7 DD  /D  DD  jD  ЕD  │D  ╪D  E  2E  `E  7 `EЗE  гE  ├E  ъE  F  F  :F  



Похожие:

Pas-pg.dos/Tpw1 iconДокументы
1. /Tb_c_ug.dos/1cont.txt
2. /Tb_c_ug.dos/1intr.txt
Pas-pg.dos/Tpw1 iconДокументы
1. /Td.dos/1Cont.txt
2. /Td.dos/1Glossary.txt
Pas-pg.dos/Tpw1 iconДокументы
1. /Tp6progg.dos/Pg00.txt
2. /Tp6progg.dos/Pg01.txt
Pas-pg.dos/Tpw1 iconДокументы
1. /CИСТЕМА ПРОГРАММИРОВАНИЯ НА МАКРОАССЕМБЛЕРЕ MS-DOS/A1P0.TXT
2. /CИСТЕМА...

Pas-pg.dos/Tpw1 iconДокументы
1. /Tvision.dos/Tv00.txt
2. /Tvision.dos/Tv01.txt
Pas-pg.dos/Tpw1 iconДокументы
1. /Info.txt
2. /Операционная система MS DOS....

Pas-pg.dos/Tpw1 iconДокументы
1. /Et situ'n existais pas/Et situ'n existais pas.pdf
Pas-pg.dos/Tpw1 iconДокументы
1. /Et situ'n existais pas/Et situ'n existais pas.pdf
Pas-pg.dos/Tpw1 iconДокументы
1. /Turbo_c.dos/St00.txt
2. /Turbo_c.dos/St01.txt
Pas-pg.dos/Tpw1 iconДокументы
1. /Tp6userg.dos/Ug00.txt
2. /Tp6userg.dos/Ug01.txt
Разместите кнопку на своём сайте:
Документы


База данных защищена авторским правом ©podelise.ru 2000-2014
При копировании материала обязательно указание активной ссылки открытой для индексации.
обратиться к администрации
Документы

Разработка сайта — Веб студия Адаманов