@a63826ndrew
Студент, новичок в Python

Какие варианты есть здесь для реализации ассемблерной вставки?

Задание для моей лабораторной
Напишите программу, в которой создается символьный массив для записи текста.
В массив записывается текст, после чего необходимо изменить порядок следования символов в
тексте на противоположный: последний символ становится первым, предпоследний символ
становится вторым и так далее.


Данное задание нужно выполнить на языке C++ и С++ с ассемблерными вставками, с обычным C++ все получилось, а вот с ассемблерными вставками возникли проблемы
#include <iostream>
#include <bits/stdc++.h>

using namespace std;

int main()
{
    string s1 = "Hola queridos amigos";
    reverse(s1.begin(), s1.end());
    cout<<s1<<endl;
    return 0;
}

Подскажите, нужна ли какая-то библиотека для их реализации и что здесь вообще можно показать в качестве вставки?
Ну и если будут какие-то хорошие примеры и статьи, то буду благодарен.
  • Вопрос задан
  • 97 просмотров
Пригласить эксперта
Ответы на вопрос 1
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
мне бы не помешали еще примеры хорошие

вот тебе пример переставляющий первую и последнюю буквы:
#include <iostream>

int main()
{
    char s1[] = "Hola queridos amigos";
    char tmp;
    asm ("mov (%[left]), %[tmp]\n\t"
         "xchg (%[right]), %[tmp]\n\t"
         "mov %[tmp], (%[left])\n\t"
         : [tmp] "=&q"(tmp)
         : [left] "r"(s1), [right] "r"(s1 + sizeof(s1) - 2)
         : "memory");
    std::cout<<s1<<std::endl;
    return 0;
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы