Guest User

Untitled

a guest
May 25th, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.05 KB | None | 0 0
  1. char text[] = "ar s7 afe et ds 2da"; //20
  2. int counter = 849361;
  3. int max = 849361;
  4. int test = 0;
  5. int counter2 = 0;
  6. __asm
  7. {
  8.  
  9. cld
  10. mov ecx, 19
  11. mov al, ' '
  12. lea edi, text //загрузка text в edi
  13. m_beg: //начало цикла
  14.  
  15. //or al, 0
  16. repne scasb //первое вхождение ' '
  17. jz m_w //если найден пробел
  18.  
  19. jecxz m_end //ecx = 0, строка закончилась
  20. jmp m_beg
  21.  
  22.  
  23. m_w:
  24. xor ebx, ebx //чистим ebx
  25. len: //новый цикл
  26. cmp[edi + ebx], ' '
  27. jz en //вхождение второго пробела
  28. inc ebx //инкрементируем счетчик
  29. jmp len
  30.  
  31. en :
  32.  
  33.  
  34. mov eax, ebx
  35. //mov counter, eax
  36. cmp ebx, counter //сравниваем ebx и counter
  37. jg less_
  38. //jmp end_less
  39. less_:
  40. mov counter, ebx //если ebx<counter, тогда counter=ebx
  41.  
  42.  
  43.  
  44.  
  45.  
  46. //mov eax, 19
  47. //mov ebx, 0
  48. jmp m_beg
  49.  
  50.  
  51. m_end:
  52.  
  53. }
  54.  
  55. cout << counter << endl;
Add Comment
Please, Sign In to add comment