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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сертификат x509 http://www.cyberforum.ru/cpp-beginners/thread963885.html
Подскажите, пожалуйста, по поводу сертификата x509. Я скачал сертификат, например, GTE CyberTrust Global Root, где в составе имеются поля: версия, серийный номер, алгоритм подписи, издатель,...
C++ try . catch можно ли провести данную операцию для функции erase у вектора??? пытался, что-то не получилось: #include <vector> #include <algorithm> #include <exception> #include<iostream> using namespace... http://www.cyberforum.ru/cpp-beginners/thread963880.html
C++ Что означает тип Class A __cdecl(void) ?
День добрый! Помогите разобраться с одним кодом, уже несколько часов голову ломаю. #include <iostream> using namespace std; class A { int x; public: A() {x=5;} A(int a) {x=a;}
C++ блок схема
помогите пожалусто нарисовать блок схему а то сложная програма никак немогу в*эхать вот код #include <iostream> using namespace std; unsigned long get_fib(int num); int main(void)
C++ Перевод десятичного числа в двоичное число http://www.cyberforum.ru/cpp-beginners/thread963858.html
Всем доброго времени суток! Собственно вот мой код, который должен переводисть число десятичное в число двоичное. Потестил я его, со значениями от 0 до 9 - всё работает, но когда я берусь за число...
C++ Найдите 10 первых натуральных чисел, больше 100, кратные 9 и заканчиваются на цифру 7 Знайдіть 10 перших натуральних чисел, що більші за 100, кратні 9 та закінчуються на цифру 7. подробнее

Показать сообщение отдельно
Анд_Рей
3 / 4 / 0
Регистрация: 27.12.2009
Сообщений: 162

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

27.09.2013, 22:18. Просмотров 611. Ответов 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...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru