fork download
  1. #include <iostream>
  2.  
  3. int main() {
  4. int var1 = 10; // Первая переменная
  5. int var2 = 0; // Вторая переменная
  6. int var3 = 0; // Третья переменная
  7.  
  8. // Ассемблерная вставка для перемещения данных
  9. asm(
  10. "movl %1, %0\n\t" // var1 -> var2
  11. "movl %0, %2" // var2 -> var3
  12. : "=r" (var2), "=r" (var3)
  13. : "r" (var1), "0" (var2), "1" (var3)
  14. );
  15.  
  16. std::cout << "var1: " << var1 << std::endl;
  17. std::cout << "var2: " << var2 << std::endl;
  18. std::cout << "var3: " << var3 << std::endl;
  19.  
  20. return 0;
  21. }
  22.  
Success #stdin #stdout 0.01s 5284KB
stdin
Standard input is empty
stdout
var1: 10
var2: 0
var3: 0