Poltish21 Опубликовано 19 февраля, 2012 Жалоба Поделиться Опубликовано 19 февраля, 2012 наподобие CallApiByName в VB 6, то есть которая будет рассматривать введённый мной идентификатор как оператор. илиЗадача в следующем: когда кто либо будет работать в моей проге, он вводит допустимmov eax,113mov ebx,453imul eax,ebxinc eaxи надо как то забить эти значения в паскаль чтобы потом после запуска проги, паскаль делал действия исходя из заданных ему команд. Я знаю что криво написал, не ругайтесь, просто кто если знает помогите как так сделать. Заранее большое спасибо. Ссылка на комментарий
Clondike Опубликовано 20 февраля, 2012 Жалоба Поделиться Опубликовано 20 февраля, 2012 асмовскую процедуру можно сделать Ссылка на комментарий
Poltish21 Опубликовано 23 февраля, 2012 Автор Жалоба Поделиться Опубликовано 23 февраля, 2012 поподробнее можно пожалуйста?) Ссылка на комментарий
Dik Опубликовано 23 февраля, 2012 Жалоба Поделиться Опубликовано 23 февраля, 2012 Насколько я понял, автор темы хочет получить внутри паскаля скриптовый язык, наподобии интерпретации вызовов в VB. Асмовская процедура как предлагает Clondike (насколько я его понял) тут не подойдут, туда можно жестко вписать нужный код, но не более того, а автору нужен именно интерпретатор. Интерпретатор ассемблера можно написать прямо внутри паскаля, это действительно потребует использования функций asm с соответствующим кодом, вот только писать их придется для каждого из доступных вызовов, и как то передавать ей параметры. А код пользователя перед интерпретацией еще надо разобрать, хотя в случае с ассемблером это простая задача. В общем куча геморроя получается.Проще попытаться встроить какой-нибудь готовый интерпретатор в программу на pascal, например Lua, Python, Pascal Script вполне подойдут. Ссылка на комментарий
Clondike Опубликовано 24 февраля, 2012 Жалоба Поделиться Опубликовано 24 февраля, 2012 Dikя понял, што имел в виду автор, просто ответил кратко, что в пасе есть асм-процедуры. Интерпретацию конеш делать придется.Poltish21Подробнее написать мне трудно, т.к. давно не видел паскаля. Посмотри справочник функций, хэлп.Добавлено спустя 2 минуты 55 секунд:Сложность задачи будет определяться тем, сколько асм-команд юзер может вводить. Имеется в виду, насколько разнообразным должен быть твой "вводимый язык асм".Добавлено спустя 12 минут 18 секунд:в BP (TP) есть встроенный ассемблерДобавлено спустя 3 минуты 40 секунд:функции/процедуры для асма:asm, assembler, inlineДобавлено спустя 5 минут 14 секунд:возьми книжку по паскалю и посмотри там главу о работе с асмомДобавлено спустя 2 минуты 4 секунды:встроенный асм BP 7.0 расширенный набор регистров не поддерживает Ссылка на комментарий
smileman Опубликовано 25 февраля, 2012 Жалоба Поделиться Опубликовано 25 февраля, 2012 похоже задача состоит в написании транслятора) Ссылка на комментарий
Рекомендуемые сообщения
Пожалуйста, войдите, чтобы комментировать
Вы сможете оставить комментарий после входа в
Войти