Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.58/26: Рейтинг темы: голосов - 26, средняя оценка - 4.58
143 / 27 / 4
Регистрация: 06.05.2019
Сообщений: 1,790
Записей в блоге: 4
1

На каком языке написаны операторы

03.07.2020, 23:58. Показов 4914. Ответов 30
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Например компилятор при открытии понимает if else break и т.д (может это всё тупо переписано из Ассэмблера). Интересно как они созданы как устроены, можно ли создать свои? Только не нужно рассказывать как они работают, пишу в поисковик этот вопрос и все как один блогеры начинают рассказывать как они работают. Просто хочу понять и развиваться, компилятор также подсвечивает синим и типы данных int char и т.д., я бы тоже хотел создать свои.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.07.2020, 23:58
Ответы с готовыми решениями:

На каком языке написаны стандартные библиотеки языка?
привет. подскажите на каком языке написаны стандартные библиотеки языка си. если на языке...

На каком языке программирования написаны программы Setup
На каком языке пишутся Setupы?

На каком языке и в каком приложении писалась эта програмка?
мне надо отредактировать и скомпилировать чтобы в exe файле писались моя фамилия

Операторы цикла в языке C ++
Для функции Y = f (X), график которой приведен в Вашем индивидуальном задании, вывести на экран...

30
Неэпический
17870 / 10635 / 2054
Регистрация: 27.09.2012
Сообщений: 26,737
Записей в блоге: 1
04.07.2020, 00:52 2
Вам уже советовали книжки по разработке парсеров и компиляторов.
0
143 / 27 / 4
Регистрация: 06.05.2019
Сообщений: 1,790
Записей в блоге: 4
04.07.2020, 16:17  [ТС] 3
Цитата Сообщение от Croessmah Посмотреть сообщение
Вам уже советовали книжки по разработке парсеров и компиляторов.
Всех книг не прочитаешь, можете указать конкретное пособие где 100% будет эта тема?
0
2063 / 1542 / 168
Регистрация: 14.12.2014
Сообщений: 13,402
04.07.2020, 16:20 4
Цитата Сообщение от Nexi99 Посмотреть сообщение
Всех книг не прочитаешь, можете указать конкретное пособие где 100% будет эта тема?
В универ идите. В районе 3-4 го курсов будет предмет теория знаковых систем (семиотика). От там все это и изучают. Ну и на курсач свой учебный язык пилють.
А на 3-4 ом - потому что до этого все это время учат как комп фунциклит и т.д. чтобы понятно было как из этих букафок вычисления поиметь, а не только распарсить.
0
143 / 27 / 4
Регистрация: 06.05.2019
Сообщений: 1,790
Записей в блоге: 4
04.07.2020, 16:35  [ТС] 5
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
В универ идите. В районе 3-4 го курсов
Если бы мог пошёл и не писал здесь.

Добавлено через 1 минуту
Так что конкретно читать по этой теме?
0
2063 / 1542 / 168
Регистрация: 14.12.2014
Сообщений: 13,402
04.07.2020, 17:17 6
Nexi99,
ну по парсингу так чтобы совсем на пальцах https://al.cs.msu.ru/files/for... theory.pdf
Только для того, чтобы от того, что что то распарсилось, был смысл придется вот это https://logic.pdmi.ras.ru/~dvk/graphs_dk.pdf изучить понять и научится использовать с закрытыми глазами.
Этого для первого этапа - построения абстрактного синтаксического графа, пригодного к исполнению будет достаточно.
Дальше этапы оптимизации и кодогенерации. Для того чтобы понять как их делать, для каждого из них нужно точно так же изучить, понять, и научиться использовать с закрытыми глазами свой набор талмудов.
0
3881 / 2479 / 418
Регистрация: 09.09.2017
Сообщений: 10,888
04.07.2020, 22:59 7
Лучший ответ Сообщение было отмечено Antikl как решение

Решение

Цитата Сообщение от Nexi99 Посмотреть сообщение
Например компилятор при открытии понимает if else break и т.д
компилятор также подсвечивает синим и типы данных
Ох путаете вы чего-то. Компилятор ничего не подсвечивает и ничего не открывает. Он просто читает входной файл и переводит в объектный.
А открывают и подсвечивают редакторы кода.
Собственно, похоже, проблема уже на этом этапе - вы не знаете как происходит компиляция. Попробуйте отказаться от IDE и поработать при помощи инструментов прошлого тысячелетия (актуальных до сих пор): консольный компилятор (да хотя бы gcc/g++), make, терминал. Причем начните именно с поиска как этим всем пользоваться, как создавать многофайловые проекты, объединять несколько языков и тому подобные задачи.
3
4064 / 3318 / 924
Регистрация: 25.03.2012
Сообщений: 12,493
Записей в блоге: 1
05.07.2020, 06:19 8
COKPOWEHEU, ну как бы IDE и в прошлом тысячелетии существовали. И под первыми виндами и под досом со всей этой нашей подсветкой синтаксиса и.т.д.
0
2063 / 1542 / 168
Регистрация: 14.12.2014
Сообщений: 13,402
05.07.2020, 07:20 9
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
И под первыми виндами и под досом со всей этой нашей подсветкой синтаксиса и.т.д.
И подсветка в прошлом тысячелетии была ни чем иным как выхлопом лексера. В нонешнем там без выхлопа именно парсера точно не обошлось.
0
191 / 90 / 33
Регистрация: 04.11.2013
Сообщений: 474
Записей в блоге: 4
05.07.2020, 09:49 10
На первом курсе учат "Методы трансляции и языки программирования. Изучаются там грамматики, классификация грамматик Хомского, контекстно-зависимые грамматики, контекстно-зависимые грамматики, конечные автоматы, регулярные выражения, левосторонний разбор, правосторонний разбор, лексический разбор, синтаксический разбор, построение дерева синтаксического разбора, цепочки, правила вывода цепочек, состояния конечных автоматов, алфавит входных символов.

Американцы используют для этого дела yacc (yet another compiler compiler), bison, lex, flex - с их помощью созданы компиляторы gcc, g++, языки программирования C, C++, Perl, PHP, Python и множество других

«Компиляторы: принципы, технологии и инструменты» — классический учебник по теории построения компиляторов под авторством Альфреда В. Ахо, Рави Сетхи и Джеффри Д. Ульмана
1
Неэпический
17870 / 10635 / 2054
Регистрация: 27.09.2012
Сообщений: 26,737
Записей в блоге: 1
05.07.2020, 12:37 11
Лучший ответ Сообщение было отмечено Antikl как решение

Решение

Евгений Зуев: С++ в России: Стандарт языка и его реализация
1
DrOffset
05.07.2020, 12:49
  #12

Не по теме:

Цитата Сообщение от Alexandr_1982 Посмотреть сообщение
«Компиляторы: принципы, технологии и инструменты»
Уже это советовали, что было успешно проигнорировано с ответом "всех книг не прочитаешь". :)

0
Модератор
2121 / 991 / 169
Регистрация: 23.07.2018
Сообщений: 3,328
Записей в блоге: 3
13.09.2020, 19:02 13
Цитата Сообщение от Nexi99 Посмотреть сообщение
компилятор при открытии понимает if else break и т.д (может это всё тупо переписано из Ассэмблера). Интересно как они созданы как устроены, можно ли создать свои?
Стандартными средствами, думаю, можно реализовать на с++ некоторый ограниченный аналог if else (без использования встроенного в язык if).
break и другие аналоги goto, и, тем более, throw без использования сомнительных платформозависимых и компляторозависимых приёмчиков написать на с++, скорее всего, невозможно. Придётся править компилятор.
Ассемблер - это программа, написанная обычно на одном из доступных языков высокого уровня.
https://repo.or.cz/nasm.git/bl... assemble.c
Переписывать оттуда особо нечего.

Компилятор, обнаружив break, определяет, в каком switch или цикле он находится.
Если ни в каком, то выдаёт сообщение об ошибке, например, такое:
Цитата Сообщение от gcc
error: break statement not within loop or switch
Если всё хорошо, генерирует код, выполняющий
C
1
goto extilooporswitch;
exitlooporswitch - метка сразу после switch или тела цикла, в котором был обнаружен break.
0
1352 / 851 / 365
Регистрация: 26.02.2015
Сообщений: 3,799
13.09.2020, 19:25 14
Как самому создать цикл, который будет работать по моей технологии
Создаётся ли копия инструкции написанной программистом?

А я смотрю, ты основательно готовишься к концу осени... Тебе стоит объединиться с Etyuhibosecyu, чтобы вы могли закончить разработку языка C↑ᶜC.
0
Croessmah
13.09.2020, 19:26
  #15

Не по теме:

Цитата Сообщение от Nishen Посмотреть сообщение
чтобы вы могли закончить разработку языка C↑ᶜC
Си белиберда нельзя закончить.

0
143 / 27 / 4
Регистрация: 06.05.2019
Сообщений: 1,790
Записей в блоге: 4
13.09.2020, 20:16  [ТС] 16
Цитата Сообщение от politoto Посмотреть сообщение
Ассемблер - это программа, написанная обычно на одном из доступных языков высокого уровня.
Я смотрел на Ассемблере много команд можно формулировать разные технические нюансы, если я правильно понял Ассемблер может работать как с типами так и без них используя команду mov ну это конечно грубо говоря, циклы там тоже есть, но только их нужно собирать, если я правильно понял там просто команда на сдвиг и команда на инкремент как таковых циклов там конечно нет.
У меня много задумок и нет времени иначе я бы с удовольствием поигрался с этим языком. Но возникает куча вопросов как подогнать код под нужные процессоры а также очень геморойно будет подключить это всё в с++ чтобы использовать в том же mql4 и других оболочках.
0
Неэпический
17870 / 10635 / 2054
Регистрация: 27.09.2012
Сообщений: 26,737
Записей в блоге: 1
13.09.2020, 20:29 17
Цитата Сообщение от Nexi99 Посмотреть сообщение
если я правильно понял Ассемблер может работать как с типами так и без них
Может всё-таки книжку?
0
143 / 27 / 4
Регистрация: 06.05.2019
Сообщений: 1,790
Записей в блоге: 4
13.09.2020, 20:41  [ТС] 18
Я читал про это на сайтах да и сам эту команду использовал для присваивания значений. Ну в любом случае работы вагон и сделать её не получиться и придётся нормально с с++ разобраться может через лет 20ть попробую на Ассемблере компилятор сделать или писать на нём но на данный момент не целесообразно из-за трудоёмкости.
Если операторы написаны таким способом то явно эти языки тупо копипастились друг у друга поэтому они так коряво и работают ну да ладно хватит и этого.
0
Неэпический
17870 / 10635 / 2054
Регистрация: 27.09.2012
Сообщений: 26,737
Записей в блоге: 1
13.09.2020, 21:03 19
Цитата Сообщение от Nexi99 Посмотреть сообщение
то явно эти языки тупо копипастились друг у друга
LLVM в действии.
0
76 / 68 / 10
Регистрация: 11.07.2016
Сообщений: 320
13.09.2020, 21:04 20
Цитата Сообщение от Nexi99 Посмотреть сообщение
они так коряво и работают
Они работают ровно так, как было задумано. Автомобиль не становится корявым из-за того, что на нём нельзя слетать до луны.
0
13.09.2020, 21:04
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.09.2020, 21:04
Помогаю со студенческими работами здесь

На каком языке...
Всем привет)) Вопрос к вам программисты: На каком языке программирования пишем?

Операторы выбора(переключатель) в языке C++
Написать программу,которая по вводимому числу от 1 до 5 (номеру курса) выдаёт соответствующее...

На каком языке написано?
Тем много но нужной для себя не нашёл, поэтому пишу сюда. Кто-нибудь знает что это за язык? ...

на каком языке писать
Хочу начать программировать под андроид. Знаю только С/С++, я читал что программировать под андроид...

На каком языке код
Добрый вечер. Поставлена задача изменить текст на сайте. Управляю с wordPress'a. Хотел бы узнать,...

На каком языке исполняют?
Помогите опознать на каком языке на этой странице прогают люди и в каком редакторе это делается?...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru