Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <Windows.h>
- #include <locale>
- using namespace std;
- inline int y2(int a, int x) {
- int c;
- __asm { //ассемблерная функция
- mov edx, a // помещение в регистр еdх значения переменной a
- cmp edx, 3 // если a > 3
- jnbe m2
- mov c, 11
- jmp EndOfIf1 //Переходим в конец
- m2:
- mov edx, a
- imul edx, 3
- mov c, edx
- EndOfIf1:
- }
- return c;
- }
- inline int y1(int a, int x) {
- int c;
- __asm { //ассемблерная функция
- mov edx, x // помещение в регистр еdх значения переменной x
- cmp edx, a // если x > a
- JG m1
- mov eax, a
- sub eax, 7
- mov c, eax
- jmp EndOfIf //Переходим в конец
- m1 :
- mov edx, x
- INVERT: NEG edx
- JS INVERT
- add edx, a
- mov c, edx
- EndOfIf :
- }
- return c;
- }
- int main() {
- setlocale(LC_ALL, "ru");
- int x, a;
- do {
- cout << "Введите x: ";
- cin >> x;
- } while (!x);
- do {
- cout << "Введите a: ";
- cin >> a;
- } while (!a);
- cout << y1(a, x) - y2(a, x) << endl;
- system("pause");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement