Advertisement
Guest User

Untitled

a guest
Apr 14th, 2019
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #define _CRT_SECURE_NO_WARNINGS
  2. #include <stdio.h>
  3. int main() {
  4.     char a = -6, b = 4, c = 8, d = 2, x = -3, n = 0;
  5.     short y, s[7];
  6.     __asm {
  7.         mov dl, x
  8.         jmp start_loop
  9.  
  10.         start_loop :
  11.         cmp dl, 3
  12.         jg exit
  13.         cmp dl, 0
  14.         je y2
  15.         jg y3
  16.  
  17.         y1 :
  18.         mov bl, a
  19.         mov al, 2
  20.         imul bl
  21.         mov cx, ax
  22.         mov al, b
  23.         mov cl, dl
  24.         imul cl
  25.         add bl, cl
  26.         mov ax, bx
  27.         //ax
  28.         jmp end_loop
  29.  
  30.         y2 :
  31.         mov cl, a
  32.         mov bl, b
  33.         sub cl, bl
  34.         mov al, cl
  35.         mov ah, 0
  36.         mov bl, 2
  37.         div bl
  38.         //ax
  39.         jmp end_loop
  40.  
  41.         y3 :
  42.         mov al, a
  43.         imul al
  44.         mov bl, dl
  45.         add bl, al
  46.         mov cl, c
  47.         mov al, d
  48.         sub cl, al
  49.         mov al, bl
  50.         div cl
  51.         mov ah, 0
  52.         //ax
  53.         jmp end_loop
  54.  
  55.         end_loop :
  56.         mov s[n], ax
  57.         mov bl, n
  58.         add bl, 1
  59.         mov n, bl
  60.         add dl, 1
  61.         jmp start_loop
  62.  
  63.         exit :
  64.         nop
  65.     }
  66.     for (int k = 0; k < 7; k++) {
  67.         printf("y = %d\n", s[k]);
  68.     }
  69.     system("pause");
  70.     return 0;
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement