Advertisement
Bobita

lab3_pmd

Nov 9th, 2023
918
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Z80 Assembler 1.11 KB | Source Code | 0 0
  1. dosseg             ; Tells the assembler to use the DOS segment addressing mode
  2. .model small      
  3. .stack 100h        
  4. .data            
  5.     MESAJ_1 DB 'Introdu caracterul: $'
  6.     MESAJ_2 DB 0DH, 0AH, 'Caracterul dupa transfomare este: $'
  7.     CARACTER DB ?, '$'
  8. .code              
  9.  
  10. convert_to_uppercase proc
  11. MOV AX, @DATA
  12.     MOV DS, AX
  13.  
  14.     LEA DX, MESAJ_1
  15.     MOV AH, 9
  16.     INT 21H
  17.  
  18.     MOV AH, 1
  19.     INT 21H
  20.  
  21.     MOV BL, AL
  22.    
  23.     LEA DX, MESAJ_2
  24.     MOV AH, 9
  25.     INT 21H  
  26.  
  27.     SUB BL, 20H
  28.  
  29.     MOV AH, 2
  30.     MOV DL, BL
  31.     INT 21H  
  32.  
  33.     MOV AH, 4CH
  34.     INT 21H
  35. endp
  36.  
  37. convert_to_lowercase proc
  38. MOV AX, @DATA
  39.     MOV DS, AX
  40.  
  41.     LEA DX, MESAJ_1
  42.     MOV AH, 9
  43.     INT 21H
  44.  
  45.     MOV AH, 1
  46.     INT 21H
  47.  
  48.     MOV BL, AL
  49.    
  50.     LEA DX, MESAJ_2
  51.     MOV AH, 9
  52.     INT 21H  
  53.  
  54.     ADD BL, 20H
  55.  
  56.     MOV AH, 2
  57.     MOV DL, BL
  58.     INT 21H  
  59.  
  60.     MOV AH, 4CH
  61.     INT 21H
  62. endp
  63.  
  64. main proc
  65.     CALL convert_to_uppercase
  66.     ;CALL convert_to_lowercase
  67.     ; IESIREA DIN PROGRAM ca sa nu dureze o eternitate..
  68.     MOV AH, 4CH
  69.     INT 21H
  70. main endp
  71. end main
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement