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

Передача значения в asm вставку - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Программа про перемещение шахматных фигур на доске http://www.cyberforum.ru/cpp-beginners/thread1001783.html
Помогите пожалуйста написать эту программу. Не знаю с чего ее начать. Заранее благодарен. Поле шахматной доски задается парой натуральных чисел: первое указывает номер вертикали при счете снизу вверх. Расстановка фигур задается таким образом, что пользователь определяет вначале поля, на которых стоят перечисленные белые фигуры, затем поля - на которых стоят перечисленные черные фигуры. На...
C++ Измерить время создания и последующего уничтожения (TerminateTread) не приостановленного потока, /*Все работает, но время считает не корректно. Возможно нужно просто добавить ф-ю Wait? Или есть альтернативы? Заранее спасибо! P.S. задание и код ниже :) */ /* Измерить время создания и последующего уничтожения (TerminateTread) не приостановленного потока, который содержит внутри себя 5-ти секундную задержку. Измерения повторить 10 раз. */ http://www.cyberforum.ru/cpp-beginners/thread1001760.html
Нет компиляции C++
#include<iostream> #include<string> int main() { using namespace std; char name, dessert; cout << "Enter your name:\n";
C++ Определить функцию, позволяющую распознаёт степени пятерки
Даны натурального число n и целые числа A1,A2,A3...An. Найти количество чисел Ai(i=1,2,3,...,n), являющихся степенями пятерки.( Определить функцию, позволяющую распознаёт степени пятерки.) спасибо за ранее :)
C++ Напишите программу нахождения всех трехзначных простых чисел http://www.cyberforum.ru/cpp-beginners/thread1001740.html
Найти все трехзначные простые числа
C++ Реализовать двусвязный список есть задание на контрольной, реализовать двозвьязковий список для хранения и операций с данными вида: |Прізвище|Країна|Рік вступу|Вартість навчання| В первый подсписок входят все записи. Во второй - только те записи, где поле "Країна" не равно "Україна" Обеспечить выполнение операций: Добавление нового элемента в неупорядоченный список; составлении списков по полю "Прізвище"; ... подробнее

Показать сообщение отдельно
ssXXss
263 / 185 / 10
Регистрация: 15.01.2011
Сообщений: 668
08.11.2013, 17:21     Передача значения в asm вставку
ну так ты и положил в стек значение d = 7, команде push все равно что запихивать в стек, важен размер операнда - 1, 2, 4 , х64 - 8 байт
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
// x86
   int x = 22222,x2 = 0;
    __int64 x64 = 0xffffffffffffffff, x2x64 = 0;
    char c[] = "33333333",c2 = 0x00;
    _asm
    {
        push x
        push x64// компилятор может ругатся размер операнда 8 байт
        push c
        pop c2   // c2 = 3
        pop x2x64 // x2x64 = 0x00000000ffffffff
        pop x2     // x2 = 22222
    }
можно передавать адреса переменных и дальше работать с их содержанием , синтаксис асм вставок зависит от конкретного компилятора.
 
Текущее время: 07:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru