Нет слов: как расширить свой активный лексикон

Как осуществляется лексический разбор слова? Ответ на поставленный вопрос вы узнаете из данной статьи. Кроме этого, вашему вниманию будет представлено несколько примеров такого разбора.

Общая информация

Лексический разбор слова осуществляется при помощи различных лингвистических словарей, а именно толкового, фразеологического, словаря антонимов, синонимов и омонимов.

7. Слово «косарь» - устаревшее. Соответственно, оно не является частью активного словарного запаса современных людей.

Лексический разбор слова «золотая»

Проанализируем слово «золотая», которое входит в следующее предложение: «Пришла к нам золотая осень».

1. Золотая осень - время года, когда все деревья и травы становятся желтыми и напоминают оттенок золота (металла).

2. Слово «золотая» имеет несколько значений, а именно:

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

3. Значение - переносное.

4. Вид переносного значения словосочетания «золотая осень» - метафора (обозначает подобный цвету золота).

5. Синонимами выражения «золотая» являются следующие: желтая, сказочная, восхитительная и пр.

6. Слово «золотая» имеет следующие антонимы: грязная, отвратительная, скверная, плохая.

9. Слово «золотая» - не устаревшее. Соответственно, оно является частью активного словарного запаса современных людей.

Лексический анализ других слов

Приведем еще несколько примеров:

  • Лексический разбор слова «фантастических» в предложении «Я насмотрелся фантастических фильмов»:

1. Фантастический фильм - измышленный фантазией и в действительности не существующий.

2. Слово «фантастический» имеет несколько значений, а именно: волшебный и причудливый; невероятный и несбыточный; не существующий и являющийся фантазией.

3. Значение - прямое.

4. Синонимами слова являются следующие: невероятный, ошеломляющий, не соответствующий реальности.

5. Имеет следующие антонимы: обычный, банальный.

7. Происхождение - заимствовано из английского языка (fantastic).

8. Данное выражение является общеупотребительным. Оно может применяться в любых стилях речи.

  • Лексический разбор слова «доброте» в предложении: «По доброте душевной он отдал всю свою одежду»:

1. По доброте - душевное качество, выражающееся в заботливом и нежном отношении к кому-либо.

2. Слово «доброта» имеет только одно значение.

3. Значение - прямое.

4. Синонимами слова являются следующие: хороший, благодушный, добродушный, человеколюбивый.

5. Имеет следующие антонимы: злой, жестокий.

7. Происхождение - исконно русское.

8. Данное выражение является общеупотребительным. Оно может применяться в любых стилях речи.

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

10. Применяется в следующих фразеологизмах: по доброте душевной, слепая доброта и пр.

Часть II: Лексический Анализатор

Введение.

Я всегда считал, что примеры, по которым узнаешь что-либо новое, должны быть достаточно просты. Вот почему задумал примитивный компилятор, который, тем не менее, содержит все особенности полнофункционального. Придумал язык для манипулирования строками текста с Cи-подобным синтаксисом, с Бейсикоподобными операциями. Ниже приведен пример корректной программы на нашем языке.

Print "Введите ваше имя, пожалуйста > ";
input name;
if (name == "Jan") { // сравнение строк
name = "мой создатель"; // присваивание строк
happy = "yes";
}
print "Благодарю тебя, " + name + "!\n" + // операция конкатенации
"Ты осчастливил маленькую примитивную программку!";

Легко видеть, что здесь нет структурных элементов, таких как функции, классы и т.п. Здесь даже нет числовых типов. Однако функциональные возможности новой версии данной программы можно легко расширить.

У нас куча работы - помните список компонентов из предыдущей части? Сегодня мы займемся первым из них - лексическим анализатором. Чтобы вас немного подбодрить, замечу, что на самом деле это не сложная часть компилятора.

Все в порядке. Приступим к анализу?

Что, где, когда, а также, почему и как?

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

Можно было бы просто написать функцию, которая сравнивает строку в текущей позиции файла-источника со всеми ключевыми словами, однако работать это будет невыносимо медленно. Вместо этого, для распознавания слов воспользуемся конечным автоматом. (Если вы понятия не имеете о чем я говорю, не волнуйтесь - это не так важно).

Самое удивительное, что нам не придется делать вовсе никакой трудоемкой и сложной работы. Анализатор лексем будет сгенерирован программкой "lex". Это программа под UNIX, однако, есть несколько версий под Win32. (Та версия, которую я использовал, называется Flex. Я включил её в zip-файлы для этой части.) Вся информация по Lex в в виде HTML . (Совет для русскоязычных пользователей: если вы планируете использовать в скриптах русскоязычные комментарии, строки и идентификаторы, рекомендуется написать лексический анализатор вручную, без использования заграничных генераторов кода. Те реализации lex, которые мне попадались под руку, неправильно обрабатывали символы кириллицы, воспринимая их как отрицательные числа и приводя к типу int; в результате программа с русскими комментариями нередко зависала или вовсе не обрабатывалась. А вручную написать лексический анализатор не составит большого труда, при этом рекомендуется использовать для считывания символов переменную типа unsigned char, а не просто char. Кстати, yacc - см. ниже - подобные замечания не касаются. Прим. перев.)

Итак, вы знаете, что делает лексический анализатор (он же анализатор лексем), и мы собираемся его создать. Самое время скачать архив к уроку tut2.zip и взглянуть на код. Исходные файлы для этой части - string.l, main.cpp, а также несколько заголовочных файлов. Заметим, что архив содержит ряд каталогов. Flex.exe - в корневом, а файлы текущего урока хранятся в каталоге tut2\directory.

Лексические правила трансляции!!!

Lex нужна некоторая информация, чтобы создать лексический анализатор. Перед тем, как я опишу ее, давайте посмотрим, что должно быть во входном файле для Lex.

<определения>
%%
<правила_трансляции>
%%
<код_пользователя>

Секция <определения> содержит некоторые макросы регулярных выражений. (Регулярные выражения описаны в руководстве по Lex, а более подробно - . Мы объясняем Lex, что подразумеваем под буквой (LETTER), числом (DIGIT), а также под идентификатором (IDENT) и строковой константой (STR) (где последовательность букв включена в двойные кавычки).

Эта секция также содержит некоторый начальный код, например, #include-ы для стандартных заголовочных файлов и опережающих ссылок. Код должен быть между %{ и %}. Включил файл lexsymb.h, через минуту мы рассмотрим его.

Секция <код_пользователя> может содержать код, необходимый для анализа. В нашем случае несколько функций. Одна из них пропускает все символы внутри комментариев, несколько других возвращают содержимое строковых констант и имена идентификаторов. Также секция содержит основную функцию анализатора.

Файл lexsymb.h включает в себя список названий лексем, которые будут возвращаться функциями лексического анализатора. Помимо этого, в нем присутствует объединение "yylval", используемое для обмена дополнительной информацией (например, имя идентификатора). Почему мы используем такое объединение, будет ясно в следующей части.

А теперь взгляните на текущие правила трансляции. Следует заметить, что я пользуюсь только комментариями /* */. Lex довольно старая программа и не поддерживает // во входных файлах. Кстати, мы делаем лексический анализатор на Си. Есть версии Lex и для С++, однако традиционно Lex под Unix генерировал С-код. А мы ведь хотим добиться независимости нашей программы от платформы, или нет?

"if" {return IF;} "=" {return ASSIGN;} ";" {return END_STMT;} {IDENT} {Identifier (); /* идентификатор: копирует имя */ return ID;} {STR} {StringConstant (); /* строковая константа: копирует содержимое */ return STRING;} "//" {EatComment();} /* комментарии: пропускает */ \n {lineno++;} /* новая линия: считает строки */ {WSPACE} {} /* пустое пространство: (ничего не делает) */ . {return ERROR_TOKEN;} /* любой другой символ: ошибка, неправильная лексема */

Сюда я не включил правила трансляции, которые очень похожи. Как видно, каждое из них начинается с модели, которую Lex должен понять, далее идет некоторый код, говорящий Lex, что делать (этот код *может* содержать некоторые штуки из C++, поскольку программка просто копирует его в выходной файл). Примечательно то, что сначала проверяются самые важные конструкции. Иногда это бывает очень полезно.

Три первых конструкции очень просты. Происходит простое распознавание строки символов, в результате чего возвращается соответствующий код лексемы. При этом, чтобы, например, изменить оператор присваивания на такой, как в Паскале, достаточно заменить соответствующую строку на ":=".

А вот четвертая строка уже поинтереснее: используется макрос IDENT, распознающий строку из символов и цифр, которая не удовлетворяет всем предыдущем условиям. Если находит - вызывает функцию Identifier(), которая копирует строку из yytext (где содержится текст соответствующей лексемы) в новый массив символов. Затем лексический анализатор возвращает ID-номер лексемы; потом можно будет воспользоваться указателем yylval->str, чтобы узнать имя идентификатора. STR - аналогично, но для строковой константы.

Последующие строки следят за появлениями комментариев, концов строк, а также пустых пространств. При этом, происходит подсчет количества строк. Это потребуется в будущем для вывода сообщений об ошибках. Самое последнее правило сообщает Lex, что если входная последовательность символов не удовлетворяет всем предыдущим условиям (регулярное выражение "." означает любой допустимый символ за исключением "\n"), должна быть возвращена лексема-признак ошибки. Ее обработка реализуется вне кода данной функции.

Такой входной файл для программы Lex может быть перекомпилирован в lex.cpp при помощи следующей команды:

Flex -olex.cpp string.l

В zip-архив я также включил файл проекта для MSVC 6.0 (string.dsp). Полагаю, он также годится и для версии 5.0, но не уверен. Файл проекта содержит команду для построения string.l, поэтому он компилируется автоматически.

К сожалению, программа Lex использует нестандартный include-файл: unistd.h, не доступный в системе Windows. В корневом каталоге архива этот файл пуст. Поэтому после того, как разархивируете пример, настройте соответствующим образом Visual С++, включив начальный каталог в список, где указываются include-файлы. (в среде MSVC: Tools->Options->Directories->Include).

Файл lex.cpp собственно представляет собой законченную версию лексического анализатора, который удовлетворяет нашим правилам трансляции. Вот как просто! Основная программа в этом примере просто читает лексемы, вызывая функцию лексического анализатора, и выводит на экран названия лексемы и ее значения (если это идентификатор или строка). Можете попробовать написать кучу всякой муры, а потом наблюдать за тем, что вытворяет лексический анализатор. Произвольный набор букв и цифр, как правило, будет восприниматься как идентификаторы, но другие символы (например, "$"), будут рассматриваться как ошибочные лексемы. В начальном каталоге урока есть файл example.str. Можете воспользоваться и им.

Все лучше и лучше, не правда ли?

Итак, сейчас у нас есть программа, которая умеет "читать". Однако, она до сих пор не имеет ни малейшего представления, что она читает, и корректно ли все, что написано. Просто программа будет принимать любую лексему, о которой она что-либо знает.

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

А затем все будет по-настоящему интересно. Мы проверим компилятор на прочность программой, которая была представлена в самом начале. Компилятор ее проглотит, не потому что он проглатывает все на свете, а потому что он знает, синтаксис у программы корректный! Вижу, вы уже горите желанием приступить к дальнейшей работе, как и я. Но вам придется подождать следующей части.

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

Как делать лексический разбор слова – шаги

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

Затем снова идет работа с контекстом, когда нужно выяснить, к какому типу относится значение слова – прямому или переносному. Если оно прямое, нужно переходить к следующему шагу, если переносное, то его нужно будет охарактеризовать.

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

Наконец, с помощью словаря нужно выяснить, является ли слово устаревшим и входит ли оно в состав каких-то фразеологизмов.

Для того, чтобы сделать полноценный лексический разбор, следует использовать сразу несколько словарей. Основным будет толковый, а дополнительными – синонимов, антонимов и фразеологический.

Пример лексического разбора слова

Рассмотреть, как он делается, можно с помощью слова “косарь” из предложения: “Косарь быстро двигался по полю, за ним ложились ровные ряды травы”.

Итак, слово “косарь” в данном случае употреблено в таком значении – это человек, который занимается косьбой с помощью специального инструмента. Но у данного слова больше одного значения, оно также может означать тяжелый нож, которым что-то соскабливают, и тысячу денежных единиц (это жаргонное выражение).

В предложении оно использовано в прямом значении. Его синонимы – косильщик и косец, а антонимов у данной лексической единицы нет. Это исконно русское слово, которое в том значении, в котором оно использовано в предложении, относится к категории общеупотребительной лексики. В то же время оно относится к категории устаревших слов, поскольку в современных условиях само занятие является неактуальным.

Жаргонное происхождение слова “косарь” не имеет никакого отношения к косьбе – тысячерублевую денежную единицу так назвали из-за того, что и на первых русских ассигнациях, и на государственных банкнотах, выпущенных с 1917 году ее номинал – 1000 – был напечатан по косой линии.

Что мы узнали?

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

Как сделать Лексический разбор слова.

1. Найти лексическое значение слова в данном предложении.

Фонетический разбор слов

2. Указать, является слово конкретным либо неоднозначным (если слово неоднозначное, то именовать несколько его значений, придумать несколько словосочетаний либо предложений).

3. В каком значении, прямом либо переносном, употреблено слово?

4. Какие синонимы и антонимы имеет данное слово?

5. Указать стилистическую характеристику слова (разговорное, книжное, стилистически нейтральное) . Какие пометы, указывающие на особенности потребления слова, имеются в словаре?

6. Каково происхождение слова?

1) лексический разбор слова – это лингвистическое сочинение (наивно возлагать на то, что у кого-либо есть уйма времени, чтоб это сочинение написать);

2) лексический разбор подразумевает серьёзную работу со словарями;

3) выполнить лексический разбор слова , данного вне предложения, нереально.

(На примере прилагательного ЗОЛОТОЙ).

Мокроватую землю в лесу.

Смело топчу я ногой.

Весеннюю леса красу.

1) из золота (золотой слиток, золотое кольцо);

2) вытканный, шитый золотом (золотой кокошник);

3) исчисляемый на золото, по курсу золота (золотой рубль, золотой эталон);

4) блестяще-жёлтый, схожий цвету золота (золотой луч солнца), отливающий золотом (золотая осень);

5) красивый, превосходный, очень неплохой (золотой работник, спец, золотое сердечко);

6) самый счастливый, подходящий (золотые деньки молодости, золотая пора юношества);

7) (в воззвании) дорогой, возлюбленный (Мамочка, золотая моя!);

8) в составе ботанических, зоологических и минералогических заглавий (золотое дерево; золотой жук).

Схема лексического разбора слова.

1. Обусловьте лексическое значение слова в контексте.

2. Если слово неоднозначно, укажите другие его значения (по мере надобности можно воспользоваться толковым словарём российского языка) .

3. Установите тип лексического значения в данном контексте: а) прямое; б) переносное.

4. Если значение переносное, охарактеризуйте вид переносного значения.

5. Постройте синонимический ряд для слова в данном значении.

6. Подберите антонимическую пару к данному слову.

7. Обусловьте, является данное слово извечно русским либо взято из другого языка.

8. Установите принадлежность анализируемого слова к общеупотребительной лексике либо лексике, ограниченной в употреблении.

9. Обусловьте, является ли слово устаревшим.

10. Укажите, заходит ли данное слово в состав фразеологизмов.

2. Слово неоднозначно: а) хирургическая операция; б) торговая операция; в) финансовая операция; г) почтовые операции.

3. Значение прямое.

4. Синонимический ряд: операция, бой, схватка, военные деяния.

5. Слово взято из латинского языка.

6. Слово проф лексики (военная терминология) .

7. Слово не является устаревшим, оно заходит в активный словарь российского языка.

1. Каково лексическое значение слова?

2. Однозначное это слово либо неоднозначное? В прямом либо в переносном значении употребляется?

3. Какие синонимы и антонимы имеет это слово?

(4. Какие пометы, указывающие на особенности потребления этого слова, имеются в словаре?

5. Каковы особенности потребления слова в данном тексте?)

(Обозначается цифрой 5)

В словаре указываются прямое и переносное значения неоднозначного слова ЯНТАРНЫЙ. 1. Изготовленный из янтаря - закаменевший смолы старых хвойных деревьев. (ЯНТАРНОЕ колье)

2. Золотисто-жёлтый, цвета янтаря. (ЯНТАРНОЕ зерно пшеницы. В данном предложении слово ЯНТАРНЫЙ употребляется в переносном значении. В этом значении к нему можно подобрать синонимы: Золотой, золотистый)

В переносном значении ЯНТАРНЫЙ обычно употребляется в произведениях художественной литературы.

Тезисы

лексический разбор слово заклинать - Школьные. Без контекста нереально сделать лексический разбор слова. молить и заклинать" а. помогите сделать лексический разбор слова заклинать))) пожалуйста. Тому кто поможет тобу. помогите пожалуйста сделать лексический разбор слова. Помогите пожалуйста сделать лексический разбор слова заклинать как наилучшие, но. Как сделать лексический разбор слова заклинать? Заклинать - это глагол, который является неоднозначным словом. У этого глагола два главных. подскажите пожалуйста))) Как сделать лексический разбор слова (ЗАКЛИНАТЬ). Лексический разбор слова - что же все-таки это такое? Как осуществляется лексический разбор слова ? Ответ на поставленный вопрос вы узнаете из. Как сделать лексический разбор слова заклинать -. образец полного фонетического разбора. Как сделать разбор слова по составу край Rehau online. Лексический разбор слова - sinykova. Лексический разбор слова предполагает анализ слова как лексической единицы русского. Лексический Разбор Слова - Что Это? Как производится лексический разбор слова? Правила лексического разбора слова? помогите пожалуйста сделать лексический разбор слова. Разбор слова по помогите пожалуйста сделать лексический разбор слова заклинать.