Форум программистов, компьютерный форум, киберфорум
Разработка и тестирование
Войти
Регистрация
Восстановить пароль
Другие темы раздела
Разработка ПО Чем воспользоваться, для создания клиент-сервера для разных устройств https://www.cyberforum.ru/ development/ thread1200157.html
Здравствуйте. Возникла необходимость создать приложение, с помощью которого пользователи сети будут обмениваться разного рода данными(один сервер, много пользователей, например, в WiFi-сети). В качестве пользователей могут выступать ПК и Android-устройства. Вопрос: какие средства для решения поставленной задачи можно использовать? В поисках решения вопроса я начал изучать работу с сокетами...
Разработка ПО Алгоритм взаимодействия заказчика и программиста при удаленной разработке
Вообщем ситуация такая: у заказчика есть сайт, его нужно немного доделать. Он находит программиста и нанимает его на работу удаленно. Теперь вопрос как заказчику обезопасить себя и при этом дать доступ к исходному коду сайта? Т.е. он же не будет давать логин и пасс от админки грубо говоря первому встречному? верно? Как вариант залить на bitbucket на приватный репозиторий исходный код, без всяких...
Разработка ПО Тестовое задание программы поиска событий системных журналов Доброе утро. Получил задание протестировать программу, предназначенную для фильтрации и поиска событий системных журналов. На какой функционал обратить внимание? Как проверить, что программа ищет все log'и? На что обратить внимание? И еще: что может значит "0" в графе "Entry type"? Заранее спасибо. https://www.cyberforum.ru/ development/ thread1195430.html Разработка ПО Не могу определиться с языком для разработки софта https://www.cyberforum.ru/ development/ thread1194715.html
Доброго времени суток форумчане! Сегодня я прошу вас помочь мне с выбором языка для реализации network level бота для MMORPG. Критерии следущие : Возможность работать без клиента игры(a.k.a non-gui client emulator) Самообучаемость a.k.a. Machine Learning Управляемость с Web-GUI Многопоточность в плане кол-ва одновременных соединений
Быстрое и обичное тестирование Разработка ПО
Всем здравствуйте, подскажите источники в которых можно выяснить данный вопрос.
Разработка ПО DFD в BpWin добавление сущности и хранилища Здравствуйте. Использую AllFusion Process Modeler r7. И вот почему то не могу добавить сущность и хранилище на DFD модель. Выбираю на панели значок, нажимаю на примерное место расположения на диаграмме, ввожу название, а ни сущности, ни хранилища нету ((( Может что-то в настройках? Или скажите, плиз, где можно другую скачать. Я эту еле нашла. Буду благодарна, а то курсач сдавать скоро, а я... https://www.cyberforum.ru/ development/ thread1184390.html
Разработка ПО Подставной объект ERP-системы (1С) Все доброго времени суток. Очень хочется в рабочий проект внедрить модульное тестирование. Главное препятствие этому - взаимодействие через COM с 1С. Как я понимаю теоретически, необходимо выделить некоторый интерфейс для взаимодействия с ней (1С) и в тестах использовать либо заглушку (mock), либо подставной объект (fake). Логичным (и самым простым-тупым) было бы реализовать используемую часть... https://www.cyberforum.ru/ development/ thread1170178.html Придумать пример метода анализа граничных значений Разработка ПО
Нужно придумать пример одного из метода тестирования, а именно анализа граничных значений. Что в интернете есть, то не подходит. Спасибо заранее.
Разработка ПО Вещание мультимедийного потока по локальной сети Здраствуйте, получил задание написать программу для вещания поток с мультимедийными данными по локальной сети. Не совсем представляю, как это адекватно сделать? Есть версия, что надо написать сокеты, например , на Java и по ним передавать поток. Уровень программирования очень низкий, надо написать просто примитивщну, чтоб удовлетворяла выше указанным требованиям. У кого есть... https://www.cyberforum.ru/ development/ thread1151092.html Разработка ПО Бета-тестирование https://www.cyberforum.ru/ development/ thread1147527.html
Здравствуйте. Пишется в рамках научной работы в университете система учета курсовых и выпускных квалификационных работ. Все хорошо, только пришла пора задуматься о тестировании. В плане тестирования есть мысль помимо обычных тестов(черный ящик, белый ящик и т.д.) включить бета-тестирование. Только вот в чем проблема - если тесты для других методов в принципе можно формализовать(входные...
Подходящий язык для программы Разработка ПО
Здравствуйте. Мне нужна программа\скрипт\макрос, которая бы из 1 файла по заданным символам проводила поиск и копировала бы данные символы вместе с 8 предыдущими символами (или предыдущей строкой) в другой файл обычным столбцом. Если есть подобная программа, было бы просто замечательно. Мне надо только показать, как её найти. Я совсем ноль в вопросе программирования, такая программа нужна...
Разработка ПО Подключение библиотеки CppUnit https://www.cyberforum.ru/ development/ thread1145163.html
Здравствуйте. Сейчас стоит задача корректно подключить cppunit к qt creator на windows.Из инструкции внутри архива я понял, что напрямую поддерживается только
2 / 2 / 4
Регистрация: 16.07.2013
Сообщений: 30
16.06.2014, 09:35 0

Создание своего компилятора - Разработка ПО - Ответ 6323578

16.06.2014, 09:35. Показов 3049. Ответов 4
Метки (Все метки)

Ответ

Делай от легкого к сложному.

Сначала надо составить цель и правила для своего языка, а потом реализовать его. К примеру я создаю тоже свой язык программирования:
Состоит из 5 команд, ввод, вывод, присвоения, условия, и цикл уайл.
1) get out [data] . -
2) get in [data] -
3) <- -
4) if ( [data] ) -> [inner block] end
5) while () is true -> [inner block] end

У меня конец инструкции обозначается с помощью точки (.) и точки запятой (.
Все вложенные блоки должны заканчиваться на разных операторах.
К примеру:
C++
1
2
3
4
5
6
7
8
9
10
11
12
     оператор .
     оператор .
     if ( условия ) ->
        оператор ;
        оператор ;
        while ( условия ) ->
          оператор .
          оператор .
        end ;
     end.   
    оператор .
    оператор .
Когда обрабатывается инструкции, то приоритет операторов такой:

0) Скобки,
1) ключевые слова операторов: if, while
2) Операторы арифметики (*, /, +, -)
3) Операторы присвоения
4) Буленовские операторы ( and, or, is true, is false, ! )

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

Потом, каждую инструкцию начинает обрабатывать по приоритету как по списку на верху.
Во время парсинга инструкции, в глобальный массив вставляется имена переменных и констант:
К примеру в коде есть такая часть:
C++
1
2
3
     firstNumber <- 15. 
     secondNumber <- 15. 
     sum <- firstNumber + secondNumber.

тогда в глобальном массиве будет:
C++
1
2
3
4
5
6
7
8
9
10
11
  global = array( 
        [0] : array(
                  'name' : 'firstNumber',
                  'value' : 15),
        [1] : array (
                  'name' : 'firstNumber',
                  'value' : 15),
        [2] : array (
                  'name' : 'sum',
                  'value' : 'firstNumber'+'secondNumber')
 );
После парсинга инструкции, если в коде есть обращении к переменным, компилятор ищет его в глобальном массиве, если переменный не найден, то выводит ошибку, или переводит в код языка С.

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

Вернуться к обсуждению:
Создание своего компилятора Разработка ПО
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.06.2014, 09:35
Готовые ответы и решения:

Создание своего ЯП и компилятора к нему
вопрос в названии темы ПС: Мысли по поводу надо переводить твой язык в какой-нибудь паскаль и...

Стоит ли заниматься созданием своего компилятора?
Задача. Создать компилятор высокоуровнего языка, в котором форма готового кода на языке ассемблер и...

Создание своего Event для своего класса
как создать событие для своего класса? У C# нужно создать свое делегат, потом создать экземпляр...

Создание компилятора
Есть программа на Turbo prolog 5.2 ...

4
16.06.2014, 09:35
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.06.2014, 09:35
Помогаю со студенческими работами здесь

Создание кнопки компилятора
Доброго всем дня суток! Как можно создать на с++ в билдере, самому кнопку компиляции, что бы она...

Структура *.exe файла. Создание компилятора
Всем привет! Подходящего раздела я не нашел, поэтому пишу в самый подходящий из тех, что есть....

Создание модуля (Внутренняя ошибка компилятора)
вот код UNIT read; interface var STR:STRING; mass:array of char; procedure...

Ошибка компилятора fatal error C1091: ограничение компилятора: длина строки превышает 65535 байт
Компилируя программу вот такой командой: cl /O2 /Oi /GL /EHsc /MD /Gy main.cpp И компилятор...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru