Guest User

Untitled

a guest
Apr 21st, 2018
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.     bits 16             ; 16-bitovy rezim
  2.     %include "rw.asm"       ; natazeni knihovny rw.asm (viz soubor rw.asm)
  3.     segment code            ; definice zacatku kodoveho segementu
  4.  
  5. ;;;;;;;;;;;;;;;;;;
  6.  
  7. mezera:
  8.     push bp
  9.     mov bp, sp
  10.  
  11.     mov dl, 13
  12.  
  13.     mov ah, 2
  14.     int 21h
  15.  
  16.     mov dl, 10
  17.  
  18.     mov ah, 2
  19.     int 21h
  20.  
  21.  
  22.  
  23.     mov sp, bp
  24.     pop bp
  25.  
  26.     ret
  27.  
  28. pridejLom: ; prida dolar na konec a do si uloz konce retezce (na pozici dolar)
  29.  
  30.     push bp
  31.     mov bp, sp
  32.  
  33.  
  34. znovu:
  35.  
  36.     mov dl, [si]
  37.  
  38.     cmp dl, 0
  39.  
  40.     je dolar
  41.  
  42.     inc si
  43.  
  44.     jmp znovu
  45.  
  46. dolar:
  47.     mov [si], word 92; vloz zpetne lomitko
  48.  
  49.  
  50.  
  51.     mov sp, bp
  52.     pop bp
  53.  
  54.     ret
  55.  
  56. zpracujLom:
  57.  
  58.  
  59.     push bp
  60.     mov bp, sp
  61.  
  62.     push si
  63.  
  64.  
  65.     inc si
  66.  
  67. zzz:   
  68.     mov dl, [si]
  69.  
  70.     cmp dl, 92
  71.  
  72.     je hhjh
  73.  
  74.  
  75.     mov ah, 2
  76.     int 21h
  77.  
  78.     inc si
  79.  
  80.     jmp zzz
  81.  
  82.  
  83. hhjh:
  84.  
  85.     call mezera
  86.  
  87.     pop si
  88.  
  89.  
  90.     mov sp, bp
  91.     pop bp
  92.  
  93.     ret
  94.  
  95. ..start:
  96.     prologue
  97.  
  98.    
  99.     mov ah, 19h   ; disk (hodnota v al)
  100.     int 21h
  101.  
  102.     mov dl, al
  103.     add dl, 65
  104.     mov ah, 2
  105.     int 21h  
  106.  
  107.     mov dl, 58
  108.     mov ah, 2
  109.     int 21h
  110.     call mezera  ; konec disku
  111.  
  112.  
  113.    
  114.     mov si, path ; rezervuj misto v pameti.
  115.  
  116.    
  117.     mov dl, 0
  118.     mov ah, 47h
  119.     int 21h ; precti adresar
  120.  
  121.    
  122.     call pridejLom
  123.  
  124.    
  125.     dec si
  126.  
  127.     mov bx, si
  128.         dec bx     ; v bx konec pasaze
  129.    
  130. zno:
  131.  
  132.     mov dl, [si]
  133.  
  134.     cmp si, path
  135.  
  136.     je konec
  137.  
  138.  
  139.     cmp dl, 92 ;porovnej ze zpetnym lomitkem
  140.  
  141.     jne pokr
  142.    
  143.     call zpracujLom
  144. pokr:
  145.  
  146.     dec si   ;;;;;;;;
  147.  
  148.  
  149.     jmp zno
  150.  
  151.  
  152. konec:
  153.  
  154.     dec si
  155.  
  156.     call zpracujLom
  157.  
  158.     epilogue            ; makro -- predani rizeni DOS (viz rw.asm)
  159.  
  160.     segment DATA            ; definice zacatku datoveho segmentu
  161.  
  162.  
  163. path resb 200
Add Comment
Please, Sign In to add comment