Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Анд_Рей
4 / 4 / 0
Регистрация: 27.12.2009
Сообщений: 157
#1

c++ и ассемблер - C++

27.09.2013, 22:18. Просмотров 604. Ответов 3
Метки нет (Все метки)

есть процедура на ассемблер

Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
.model small
 
.code
 
_count proc
    push bp
    xor ebp, ebp
    mov bp, sp
    mov eax, [bp+4]
    add eax, 15D
    pop bp
    ret
_count endp
 
end
а вот ее вызов
C++
1
2
3
4
5
6
7
8
9
#include<iostream>
 
extern "C" int count(int x);
 
void main()
{
    std::cout << count(10) << std::endl;
    getchar();
}
вместо 25(10+15) выводится,что-то типа 1699151887
Что я сделал не так??
Спасибо!

Добавлено через 1 час 15 минут
ошибку исправил
проблема была тут
Assembler
1
pop ebp ; вместо pop bp
но программа выводит 15 вместо 25...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.09.2013, 22:18     c++ и ассемблер
Посмотрите здесь:

Си VS Ассемблер - C++
struct TPID { float Kp; // Коэффициенты П, И и Д - звеньев float Ki; float Kd; float...

Формула , ассемблер. - C++
Дана формула.(изображение). z=a3 * x3 +...+ a0 * x0 #include &lt;iostream&gt; #include &lt;math.h&gt; int main(){ int i; int x=...

C++ + Ассемблер = проблема - C++
Добрый день. Вот такой код #include &lt;iostream&gt; #include &lt;windows.h&gt; using namespace std; WORD NUM; void main() ...

Компилятор с С++ на Ассемблер - C++
Доброго времени суток. Учусь в институте на заочке, по предмету Теория Языков Программирования дали препода с другого универа и она дала...

Работа с файлами. С++ и Ассемблер - C++
Написать программу, где рандомно задается матрица MxN и записать в файл 1. (Это на ++). Затем транспонировать эту матрицу с помощью...

Ассемблер , сопроцессор .(fld) - C++
Доброго вечера. Формулу представленную в изображении расписал в след. коде : #include &lt;cstdlib&gt; #include &lt;iostream&gt; using...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ab
75 / 75 / 1
Регистрация: 03.05.2012
Сообщений: 161
28.09.2013, 01:38     c++ и ассемблер #2
1. Если среда 32-битная, то не должно быть никаких BP, SP. Только EBP и ESP.
2. Первый параметр функции доступен через
Assembler
1
mov eax, [ebp+8]
Анд_Рей
4 / 4 / 0
Регистрация: 27.12.2009
Сообщений: 157
28.09.2013, 03:47  [ТС]     c++ и ассемблер #3
Цитата Сообщение от Ab Посмотреть сообщение
1. Если среда 32-битная, то не должно быть никаких BP, SP. Только EBP и ESP.
2. Первый параметр функции доступен через
Assembler
1
mov eax, [ebp+8]
теперь я получаю ошибку:
Unhandled exception at 0x00d81450 in asm.exe: 0xC0000005: Access violation reading location 0x0000f810.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.09.2013, 08:06     c++ и ассемблер
Еще ссылки по теме:

Вопрос к знатокам (ООП + ассемблер) - C++
Ниже представлены три тестовых класса. Первый - классическая модель классов в с++ Имеет методы, и данные члены. Обрабатывает свои...

как перевести код c++ на ассемблер - C++
выручайте как перевести код на c++ перевести на ассемблер, вот код если что срочно надо #include &quot;stdafx.h&quot; #include &lt;iostream&gt; ...

немогу всавить ассемблер в код - C++
пишу такой код: #include &lt;iostream&gt; int main(){ int a = 1; int b = 2; asm(&quot;mov eax, ebx&quot;); return 0; ...

Разработать простой двухпросмотровый ассемблер - C++
Уважаемые программисты, помогите создать программу на языке С++, простой двухпросмотровый ассемблер, предназначенный для перевода в...


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

Или воспользуйтесь поиском по форуму:
Ab
75 / 75 / 1
Регистрация: 03.05.2012
Сообщений: 161
28.09.2013, 08:06     c++ и ассемблер #4
Еще модель должна быть flat, конечно же.
Yandex
Объявления
28.09.2013, 08:06     c++ и ассемблер
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru