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

ассемблерная вставка с С++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Создать объект стек, перегрузив ++ и -- http://www.cyberforum.ru/cpp-beginners/thread1056288.html
Создать объект стек, перегрузив ++ и --. (Как постфиксными так префиксными). ++ Добавляет элемент в стек. -- извлекает элемент из стека. очень нужна помощь..
C++ Программа для вычисления суммы двух неотрицательных чисел. Ошибка: неправильный формат вывода. Написал супер элементарную программу для вычисления суммы двух неотрицательных чисел. #include <stdio.h> int main() { int a, b, s; s = 0; scanf("%d\n%d", &a, &b); http://www.cyberforum.ru/cpp-beginners/thread1056280.html
класс вектор, содержащий ссылку на int, размерность вектора и переменную ошибки C++
Создать класс вектор, содержащий ссылку на int, размерность вектора и переменную ошибки. Класс имеет конструкторы по умолчанию, конструктор с одним и двумя параметрами, конструктор копирования и деструктор. Определить оператор +, - , * , - как дружественные функции, =, +=, -=, *=, - как функции-члены. Определить операторы =, +, - , *, +=, -=, *= с целым числом операторы ++ и --. Определить...
C++ Найти сумму ряда с точностью e=0,001
Найти сумму ряда с точностью e=0,001, общий член которого:
C++ Найти путь наименьшей длины между 2 заданными вершинами с по мощью нерекурсивного перебора с возвратом http://www.cyberforum.ru/cpp-beginners/thread1056263.html
Найти путь наименьшей длины между двумя заданными вершинами с по мощью нерекурсивного перебора с возвратом
C++ Используя треугольник паскаля, зашифровать исходное предложение Задание 2: 1)Запросить у пользователя максимально возможную по условиям длинну LenMax строки. 2)Создать динамический символьный массив данного размера (LenMax) 3)Запросить у пользователя исходную строку и записать ее в массив, созданный в п.2. 4)Если длина введенной строки меньше LenMax, изменить кол-во памяти, выделенной под массив в п.2. (уменьшить размер массива). имеется... подробнее

Показать сообщение отдельно
Destor
0 / 0 / 0
Регистрация: 05.12.2013
Сообщений: 29

ассемблерная вставка с С++ - C++

25.12.2013, 15:38. Просмотров 165. Ответов 0
Метки (Все метки)

можете подсказать по коду программы, что каждая строчка делает(коментарий каждой строчки). Буду благодарен.
код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
const char msg[] = {'H','e','l','l','o',',',' ','W','o','r','l','d','\n'};
const char sz = sizeof(msg);
 
void _start(void)
{
  asm volatile (
  "mov $1,  %%rax\n\t" //  1 - SYS_write
  "mov $1,  %%rdi\n\t" //  1 - STDOUT_FILENO
  "mov %0,  %%rsi\n\t" // msg
  "mov %1,  %%rdx\n\t" // size
  "syscall\n"
  :
  : "g" (msg), "g" (sz)
  : "%rsi", "%rdx"
  );
  
  
  asm volatile (
  "mov $60, %rax\n\t" // 60 - SYS_exit
  "mov $0,  %rdi\n\t" //  0 - EXIT_SUCCESS
  "syscall\n");
  __builtin_unreachable();
}
//запуск программы gcc -O3 -nostartfiles -nostdlib -o hello hello.c
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru