АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Алфавит и лексемы

Читайте также:
  1. Алфавитное письмо
  2. Измерение информации: содержательный и алфавитный подходы. Единицы измерения информации.
  3. ПРЕДМЕТНЫЙ (АЛФАВИТНЫЙ) УКАЗАТЕЛЬ

Все тексты на языке пишутся с помощью его алфавита. Например, в русском языке один алфавит (набор символов), а в албанском — другой. В С# используется кодировка символов Unicode.

Компьютер умеет работать только с числами, и для того чтобы можно было хранить в его памяти текст, требуется определить, каким числом будет представляться (кодироваться) каждый символ. Соответствие между символами и кодирующими их числами называется кодировкой, или кодовой таблицей (character set).

Существует множество различных кодировок символов. Например, в Windows часто используется кодировка ANSI, в которой каждый символ представляется одним байтом (8 бит), поэтому в этой кодировке можно одновременно задать только 256 символов.

Кодировка Unicode позволяет представить символы всех существующих алфавитов одновременно, что коренным образом улучшает переносимость текстов. Каждому символу соответствует свой уникальный код. Естественно, что при этом для хранения каждого символа требуется больше памяти. Первые 128 Unicode-символов соответствуют первой части кодовой таблицы ANSI.

Алфавит С# включает:

ü буквы (латинские и национальных алфавитов) и символ подчеркивания (_) который употребляется наряду с буквами;

ü цифры;

ü специальные символы, например +, *, { и &;

ü пробельные символы (пробел и символы табуляции);

ü символы перевода строки.

Из символов составляются более крупные строительные блоки: лексемы, директивы препроцессора и комментарии.

Лексема (token) - это минимальная единица языка, имеющая самостоятельный смысл. Существуют следующие виды лексем:

ü имена (идентификаторы);

ü ключевые слова;

ü знаки операций;

ü разделители;

ü литералы (константы).

Лексемы языка программирования аналогичны словам естественного языка.

Директивы препроцессора пришли в С# из его предшественника - языка C++. Препроцессором называется предварительная стадия компиляции, на которой формируется окончательный вид исходного текста программы. Например, с помощью директив (инструкций, команд) препроцессора можно включить или выключить из процесса компиляции фрагменты кода.

Комментарии предназначены для записи пояснений к программе и формирования документации. Из лексем составляются выражения и операторы.

Выражение задает правило вычисления некоторого значения. Например, выражение а+b задает правило вычисления суммы двух величин.

ПРИМЕЧАНИЕ ———————————————————————————————

Компилятор выполняет перевод программы в исполняемый файл на языке IL за две последовательные фразы: лексического и синтаксического анализа. При лексическом анализе из потока символов, составляющих исходный текст программы, выделяются лексемы (по другим лексемам, разделителям, пробельным символам и переводам строки). На этапе синтаксического анализа программа переводится в исполняемый код. Кроме того, компилятор формирует сообщения о синтаксических ошибках.

Оператор задаёт законченное описание некоторого действия, данных или элемента программы. Например: i nt a; // это – оператор описания целочисленной переменной а.


1 | 2 | 3 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.005 сек.)