Advertisement
Guest User

Untitled

a guest
May 21st, 2019
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.34 KB | None | 0 0
  1. /***** ***************************************************************************
  2. * *
  3. * Architetture dei sistemi di Elaborazione *
  4. * *
  5. ********************************************************************************
  6.  
  7. Elaborato 1
  8. Descrizione: Sostituire tutte le occorrenze di una sottostringa all’interno di una stringa.
  9. Ad esempio (“Questa stringa è una stringa”,“stringa”,”mela”)->“Questa mela è una mela”.
  10.  
  11. ********************************************************************************/
  12.  
  13. #include <stdio.h>
  14.  
  15. void main()
  16. {
  17. // Input
  18. // La stringa da modificare
  19. char stringa[1024] = "Questa stringa e' una stringa";
  20. char str1[] = "stringa"; // la sottostringa da cercare
  21. char str2[] = "mela"; // la sottostringa con cui sostituirla
  22.  
  23. // Output
  24. char risultato[1024] = "a"; // La stringa modificata
  25.  
  26. __asm
  27. {
  28. XOR EAX, EAX
  29. JMP comparo
  30.  
  31. avanzo:
  32. INC EAX
  33.  
  34. comparo:
  35. LEA ESI, stringa[EAX]
  36. LEA EDI, str1
  37.  
  38. REPNE CMPS
  39. TEST [ESI], 0;nonsaprei
  40. JNE avanzo
  41.  
  42. copia:
  43. LEA ESI, stringa[EAX]
  44. LEA EDI, str1
  45.  
  46. REPNE MOVS
  47.  
  48.  
  49. }
  50.  
  51. // Stampa su video
  52. printf("Nuova stringa: %s\n", risultato);
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement