Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.12.2023, 06:54   #1
Kukla19
Пользователь
 
Регистрация: 23.09.2018
Сообщений: 38
По умолчанию Консольный компилятор. Создает exe файл который складывает 3 введенных числа.

Я уже давно балуюсь консолью на C++ и вот возникла мысль...

Как создать свой компилятор который создает не txt файлы с данными, а реально exe файл работающий способный сложить 2 или 3 числа.

Работаю в вижуал студии, до этого пробовал в код блоксе.

Какие знания нужны человеку чтобы создать exe файл .

Консоль с командами я осилю еще как-то. Но знаний о создании exe файлов у меня нет.
Kukla19 вне форума Ответить с цитированием
Старый 02.12.2023, 07:13   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,707
По умолчанию

Цитата:
Сообщение от Kukla19 Посмотреть сообщение
Какие знания нужны человеку чтобы создать exe файл .
Структура exe-файла
Если только сложить 2-3 заданных числа и вернуть сумму, как код возврата, то немного машинных инструкций.
Учтите, что схотелками и "если" прибавлаются и необходимые знания.
p51x вне форума Ответить с цитированием
Старый 02.12.2023, 15:12   #3
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,544
По умолчанию

Цитата:
Сообщение от Kukla19 Посмотреть сообщение
Консольный компилятор. Создает exe файл который складывает 3 введенных числа.
Компиляция предполагает наличие языка программирования, код которого и будет компилироваться в машинный. То есть компилятор позволит решить целый класс задач, а не одну единственную (сложить 3 числа). Для этого вам надо продумать синтаксис своего языка.
Arigato вне форума Ответить с цитированием
Старый 03.12.2023, 07:13   #4
Kukla19
Пользователь
 
Регистрация: 23.09.2018
Сообщений: 38
По умолчанию

Цитата:
Сообщение от Arigato Посмотреть сообщение
Компиляция предполагает наличие языка программирования, код которого и будет компилироваться в машинный. То есть компилятор позволит решить целый класс задач, а не одну единственную (сложить 3 числа). Для этого вам надо продумать синтаксис своего языка.
Ну язык допустим тот же самый: C++.
Kukla19 вне форума Ответить с цитированием
Старый 03.12.2023, 08:07   #5
Алексей1153
фрилансер
Форумчанин
 
Регистрация: 11.10.2019
Сообщений: 960
По умолчанию

Цитата:
Сообщение от Kukla19 Посмотреть сообщение
Я уже давно балуюсь консолью на C++
в C++ нет никакой консоли.

Цитата:
Сообщение от Kukla19 Посмотреть сообщение
Как создать свой компилятор который создает не txt файлы с данными
компилятор не занимается созданием txt файлов. Компилятор компилирует исходный код

Цитата:
Сообщение от Kukla19 Посмотреть сообщение
а реально exe файл работающий способный сложить 2 или 3 числа
в том числе, компилятор может откомпилировать программу, которая это сумеет выполнить
Код:
int main()
{
    int a=2+3+4;
}
Цитата:
Сообщение от Kukla19 Посмотреть сообщение
Какие знания нужны человеку чтобы создать exe файл .
в студии поначалу для этого знаний особо не требуется - жмём кнопку "собрать" Внутри запускаются нужные утилиты, на выходе получается exe

Цитата:
Сообщение от Kukla19 Посмотреть сообщение
Консоль с командами я осилю еще как-то
у меня такое ощущение, что словам "компилятор", "консоль" ты придаёшь какое-то не то значение.
Алексей1153 вне форума Ответить с цитированием
Старый 03.12.2023, 16:27   #6
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,544
По умолчанию

Цитата:
Сообщение от Kukla19 Посмотреть сообщение
Ну язык допустим тот же самый: C++.
Тогда существуют уже готовые компиляторы, зачем создавать свой? Выбирайте любой понравившийся и им компилируйте.
Arigato вне форума Ответить с цитированием
Старый 06.12.2023, 14:26   #7
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Цитата:
Сообщение от Kukla19 Посмотреть сообщение
Я уже давно балуюсь консолью на C++ и вот возникла мысль...

Как создать свой компилятор который создает не txt файлы с данными, а реально exe файл работающий способный сложить 2 или 3 числа.

Работаю в вижуал студии, до этого пробовал в код блоксе.

Какие знания нужны человеку чтобы создать exe файл .

Консоль с командами я осилю еще как-то. Но знаний о создании exe файлов у меня нет.
Придётся изучать всё с азов, разобраться как оно устроено и т.д.
Либо брать ношу по себе и для начала в прикладном программировании хоть немного освоиться.
exe-файлы если только ради любопытства сейчас кто-то ручками создаёт.
Для компиляторов есть gcc и llvm. Люди пишут для своего языка фронтэнд, который преобразует код в некий промежуточный язык, а дальше уже оптимизации и преобразование в машинные коды выполняет сторонний код и туда лезть не обязательно.
pu4koff вне форума Ответить с цитированием
Старый 08.12.2023, 11:12   #8
Kukla19
Пользователь
 
Регистрация: 23.09.2018
Сообщений: 38
По умолчанию

Цитата:
Сообщение от pu4koff Посмотреть сообщение
Придётся изучать всё с азов, разобраться как оно устроено и т.д.
Либо брать ношу по себе и для начала в прикладном программировании хоть немного освоиться.
exe-файлы если только ради любопытства сейчас кто-то ручками создаёт.
Для компиляторов есть gcc и llvm. Люди пишут для своего языка фронтэнд, который преобразует код в некий промежуточный язык, а дальше уже оптимизации и преобразование в машинные коды выполняет сторонний код и туда лезть не обязательно.
Спасибо за ответ, да я ради любопытства. Интересно как устроено.
Kukla19 вне форума Ответить с цитированием
Старый 08.12.2023, 11:13   #9
Kukla19
Пользователь
 
Регистрация: 23.09.2018
Сообщений: 38
По умолчанию

Цитата:
Сообщение от Arigato Посмотреть сообщение
Тогда существуют уже готовые компиляторы, зачем создавать свой? Выбирайте любой понравившийся и им компилируйте.
Спасибо, но мне интересна механика как новичку. За программирование берусь не часто, как хобби это у меня.
Kukla19 вне форума Ответить с цитированием
Старый 08.12.2023, 15:57   #10
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,544
По умолчанию

Цитата:
Сообщение от Kukla19 Посмотреть сообщение
За программирование берусь не часто, как хобби это у меня
Ну тогда это явно не та задача, за решение которой стоит браться. Лучше попрактиковаться на прикладных задачах.
Arigato вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Написать обработчик текстовых файлов, что создает текстовый файл в который слова будут написаны наоборот SAnastasi Паскаль, Turbo Pascal, PascalABC.NET 1 26.05.2014 17:35
Дан файл f, который содержит вещественные числа. Найти сумму чисел и записать результат в новый файл. (Delphi) 2Nboy Помощь студентам 1 08.06.2012 17:01
Необходимо доработать макрос, который создает шаблон Androgen13 Microsoft Office Excel 10 24.07.2011 22:10
Запрос, который создает новую таблицу Olya2131 Microsoft Office Access 4 08.06.2010 20:27
Консольный компилятор Дельфи Иллидан Общие вопросы Delphi 4 12.07.2008 16:18