IPB
ЛогинПароль:

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Использ-ие ассембленой вставки в Borland C++ for DOS
сообщение
Сообщение #1


Бывалый
***

Группа: Пользователи
Сообщений: 212
Пол: Мужской

Репутация: -  0  +


Не подскажете какую биюлиотеку так сказать подключить в #include чтоб можно было вставлять
ассемблерый код не указаниме в каждой строке что далее идет код ассемблера
Код
asm mov ax,a


а просто
Код
asm
{
<код ассемблера>
}


а то в документации пример есть а что то не написано что подключить(

Сообщение отредактировано: Account -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 16)
сообщение
Сообщение #2


Гость






А ничего подключать не надо. Скобка (открывающая) должна быть на той же строке, что и слово asm:
asm {
<код ассемблера>
}
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Бывалый
***

Группа: Пользователи
Сообщений: 212
Пол: Мужской

Репутация: -  0  +


Спасибо)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Бывалый
***

Группа: Пользователи
Сообщений: 212
Пол: Мужской

Репутация: -  0  +


volvo, запускаю под виндой в тотже борланд с++ только под винду компилю допустим
#include <stdio.h>
#include <iostream.h>
void main()
{
int a=2;
asm{
mov ax,a ;
mov bl,2 ;
div bl ;
cbw ;
mov a,ax ;
}
cout<<a<<endl;;
cout<<"Stroka!";
getchar();

}


Окно результата потом как правильно закрывается не знаешь, а то висит, пробовал комбинации клавишь разные ничего не действует, можно просто закрыть но тогда в процессах висит ntvdm.exe
ТОт же результат после запуска exe-ника(

Сообщение отредактировано: Account -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






Не знаю, что ты имеешь в виду под Борланд С++, но вот это прекрасно работает:
Прикрепленное изображение

Чем не Борланд? Ты лучше расскажи, почему необходимо именно вставками решать эту задачу? Средств языка уже недостаточно, надо обязательно сделать программу непереносимой не то что на другие ОСи, так даже и на другие компиляторы? С++ не для этого создавался...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Бывалый
***

Группа: Пользователи
Сообщений: 212
Пол: Мужской

Репутация: -  0  +


volvo, ты не понял компилится то нормально, но вот если под винду компилить, там присутсвиет оболочка для работы в винде, а не в досе, то не пойму как убирать окно работы программы (справа снизу, окно выполнения) если просто закрыть его то как писал выше в процессах висит ntvdm.exe и его подпроцесс wowexec.exe

А по поводу вставки это для так сказать общего развития интересуюсь)

Сообщение отредактировано: Account -


Эскизы прикрепленных изображений
Прикрепленное изображение
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Гость






Цитата
ты не понял компилится то нормально
Это ты не понял, я тебе привел кроме окна редактора еще и содержимое Output, а значит, программа мало того, что откомпилировалась, так еще и отработала и благополучно вернулась в редактор.

Цитата
не пойму как убирать окно работы программы
В программе у тебя написано getchar(); - значит, надо нажать что-нибудь на клавиатуре, когда это окно активно? Но с Windows-окнами getchar() может отказаться работать. Я не помню, в твоем компиляторе есть возможность создать консольное приложение (где-нибудь в Options)? Если да, то это единственный вариант нормально завершить программу.

А вообще - выброси этот компилятор, он настолько стар что ты будешь учить на нем не С++, а учиться обходиться без привычных в других компиляторах средств, и все время писать костыли, потому что "этого в BC нельзя, и вот этого нельзя, и здесь тоже придется обойтись по-старинке".
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Бывалый
***

Группа: Пользователи
Сообщений: 212
Пол: Мужской

Репутация: -  0  +


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

Я для себя года 4-5 назад изучал С, сейчас вот надо вспоминать)))

А вообще буду делать решение нелинейных уравненний методом итераций, Ньютона, интерполяцию функций с помощью полинома Лагранжа, решение интегралов по формуле трапеций и Симпсона)
Впринципе кое что уже ранее делал на паскале)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Гость






Цитата
лучьше посоветуй тогда нормальную среду?))
Из бесплатного: Code::Blocks с компилятором gcc (сам пользуюсь, по-моему, кого-то из форумчан перетянул на нее тоже smile.gif ) или MSVC (этим не пользуюсь и не хочу, но она бесплатна в Express Edition).

Только вот и там и там про вставки придется забыть, потому что они хоть и есть, но в очень разном формате. Лучше обходиться средствами самого языка.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Бывалый
***

Группа: Пользователи
Сообщений: 212
Пол: Мужской

Репутация: -  0  +


volvo, очередной раз спасибо за совет, воспользуюсь первой ссылкой, вещица гляжу компактная, да и вообще я как то пользовался gcc в FreeBSD)).

А вставками я просто баловался, эксперементировал)))

Сообщение отредактировано: Account -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Бывалый
***

Группа: Пользователи
Сообщений: 212
Пол: Мужской

Репутация: -  0  +


volvo, а как в Code::Blocks скомпилить exe-ник?
Создаю консольное проект, там генерируется простой код по выводу стандартной фразы, вроде компилю, а исполняемого файла не появляется)))

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12


Гость






Содержимое Build Log - в студию smile.gif


Эскизы прикрепленных изображений
Прикрепленное изображение
 К началу страницы 
+ Ответить 
сообщение
Сообщение #13


Бывалый
***

Группа: Пользователи
Сообщений: 212
Пол: Мужской

Репутация: -  0  +


Вот
P.S. Извиняюсь за дублирование

Сообщение отредактировано: Account -


Эскизы прикрепленных изображений
Прикрепленное изображение Прикрепленное изображение
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #14


Гость






Зайди в "Project -> Build Options", измени компилятор с "GNU GCC Compiler" на "Cygwin GCC", и пересобери проект... И, чтобы не делать это каждый раз, потом, ДО открытия рабочего проекта сделай то же самое для IDE: "Settings -> Compiler and Debugger"
 К началу страницы 
+ Ответить 
сообщение
Сообщение #15


Бывалый
***

Группа: Пользователи
Сообщений: 212
Пол: Мужской

Репутация: -  0  +


Всеравно тоже самое(

Сообщение отредактировано: Account -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #16


Гость






Не понял... Ты какой файл качал по ссылке, что я дал? Который "codeblocks-8.02-setup.exe" или "codeblocks-8.02mingw-setup.exe"? Если первый, то тебе надо установить компилятор самостоятельно, он не идет в комплекте. А если второй - то должно быть все в порядке при Cygwin GCC... Показывай окно настройки компилятора, и смотри, 1) есть ли такая папка, которая в нем указана 2) есть ли все те EXE-файлы, которые указаны ниже:


Эскизы прикрепленных изображений
Прикрепленное изображение
 К началу страницы 
+ Ответить 
сообщение
Сообщение #17


Бывалый
***

Группа: Пользователи
Сообщений: 212
Пол: Мужской

Репутация: -  0  +


Ты прав, по поводу скачанных файлов, я тоже пока тебе надоедал, стал подозревать что нужен второй, поставил его на закачку))
Счас установлю и отпишусь)

Добавлено через 17 мин.
volvo, все сделал, заработало) Благодарю за помощь)

Сообщение отредактировано: Account -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 19.04.2024 17:44
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name